RSA 키 쌍 생성
2048 / 3072 / 4096비트 · SPKI 공개키 + PKCS#8 개인키 · JWK와 법칭 지문 포함
私钥只存在于当前页面内存中:不写本地存储、不出现在任何网络请求里,刷新页面即消失。请妥善保管你复制/下载的内容。
—(对同一密钥对,指纹相同 = 同一把公钥,可用于核对)为什么私钥可以"只在你浏览器里"
密钥生成是纯数学运算。RSA 密钥对的生成只需要随机大数与模幂运算,这些运算现代浏览器的 Web Crypto 接口(背后常是操作系统/硬件的加密实现)都能直接完成。生成 2048 位密钥通常不到一秒,3072 / 4096 位也就多等几百毫秒——根本不需要把任何东西交给服务器。这也意味着:你的私钥从头到尾没有离开过这台设备,不存在"被服务器留存"的可能。
SPKI 与 PKCS#8 是两种标准容器。公钥按 SPKI(Subject Public Key Info)编码、私钥按 PKCS#8 编码,外面都包上 PEM 的 base64 与 BEGIN/END 头。这是目前最通用的两种格式:Nginx 的证书链、JWT 的 RS256 签名、OpenSSL 命令行都直接认。老式的 PKCS#1 私钥(BEGIN RSA PRIVATE KEY)本页不输出,需要时用 openssl pkey 转换即可。
模数指纹用来核对"是不是同一把公钥"。两把公钥是否相同,直接比文本容易看花眼;把公钥的模数(n)做 SHA-256 得到的短指纹则稳定可比。你在不同工具里生成或导入同一把公钥时,指纹一致就说明是同一条。
자주 묻는 질문
돼요. 브라우저 내장 Web Crypto (RSASSA-PKCS1-v1_5 + SHA-256) 로 만들고, 공개 키는 SPKI, 개인 키는 PKCS#8 로 둘 다 표준 PEM 텍스트예요—Nginx, JWT 서명, OpenSSL 등에 바로 쓰고, 받아 간 뒤 openssl pkey 로 다시 확인할 수 있어요.
안 해요. 만들기도 내보내기도 보이게 하기도 전부 당신 브라우저 안에서 끝나요—개인 키는 지금 페이지 메모리 안에만 있고, localStorage 에 안 쓰고, 어떤 네트워크 요청에도 안 나오고, 새로고침하면 사라져요; 이 페이지엔 올리는 구멍 자체가 없어요.
2048 비트는 현행 보안 요구를 충족하고 호환성이 제일 좋아요; 3072 비트 (약 128 비트 강도) 는 오래 쓸 일에 맞고; 4096 비트는 더 믿음직하지만 서명·검증이 확실히 느려져요. 보통 웹이랑 인터페이스 서명은 2048 이나 3072 면 충분해요.
SPKI 는 공개 키를, PKCS#8 은 개인 키 (암호화 안 된 판) 를 담아요. 이 페이지는 옛날 식 PKCS#1 개인 키를 안 내요; 받는 쪽이 PKCS#1 을 요구하면 openssl pkey 한 줄로 두 형식을 서로 바꿔요.
브라우저는 보안 문맥 (https 나 localhost) 에서만 crypto.subtle 열쇠 생성 API 를 열어 줘요; http 로 이 페이지를 열면 안내를 띄우고 만들기 단추를 꺼 둬요.