WebCrypto
约 1 分钟阅读
- 部分浏览器要求 HTTPS
- 参考
- Web Crypto API
- sha256
- lapo.it/asn1js
- travist/jsencryptGitHubtravist/jsencrypt
- 非常古早的加密库
- OpenSSL RSA Encryption, Decryption, Key Generation
- travistidwell.com/jsencrypt/demo
- PKCS#5 #35GitHub Issuetravist/jsencrypt#35
- brix/crypto-jsGitHubbrix/crypto-js
- 不再维护
- safebash/opencryptoGitHubsafebash/opencrypto
- 支持的算法
- ⚠️ 不支持 RSASSA-PKCS1-v1_5
- format
- raw
- pkcs8 - PKCS #8
- PKCS#1 是旧的格式
- spki - SubjectPublicKeyInfo
- jwk
- PKCS5
# pkcs1 -> pkcs8
openssl pkcs8 -topk8 -inform PEM -outform PEM -nocrypt -in pkcs1.key -out pkcs8.keyMember RsaHashedImportParams.hash is required and must be an instance of (object or DOMString)
await crypto.subtle.importKey('raw', PEM.decode(key).block.bytes, 'RSA-OAEP', false, ['decrypt']);
await crypto.subtle.importKey(
'raw',
PEM.decode(key).block.bytes,
{
name: 'RSA-OAEP',
hash: 'SHA-265',
},
false,
['decrypt'],
);关联信息
反向链接、本文链接的其他页面和外部资料。
参考资料
GitHub4 条
- brix/crypto-jsgithub.com/brix/crypto-js
- safebash/opencryptogithub.com/safebash/opencrypto
- travist/jsencryptgithub.com/travist/jsencrypt
- travist/jsencrypt#35github.com/travist/jsencrypt/issues/35
其他外链8 条
- cryptosense.com/blog/choice-of-algorithms-in-the-w3c-crypto-apicryptosense.com/blog/choice-of-algorithms-in-the-w3c-crypto-api
- developer.mozilla.org/en-US/docs/Web/API/SubtleCryptodeveloper.mozilla.org/en-US/docs/Web/API/SubtleCrypto
- developer.mozilla.org/en-US/docs/Web/API/SubtleCrypto/unwrapKeydeveloper.mozilla.org/en-US/docs/Web/API/SubtleCrypto/unwrapKey
- developer.mozilla.org/en-US/docs/Web/API/Web_Crypto_APIdeveloper.mozilla.org/en-US/docs/Web/API/Web_Crypto_API
- gist.github.com/GaspardP/fffdd54f563f67be8944gist.github.com/GaspardP/fffdd54f563f67be8944
- lapo.it/asn1jslapo.it/asn1js
- stackoverflow.com/questions/59349485stackoverflow.com/questions/59349485
- travistidwell.com/jsencrypt/demotravistidwell.com/jsencrypt/demo