Javascript
1var secret = "公開鍵" 2function importRsaKey(pem) { 3 function str2ab(str) { 4 const buf = new ArrayBuffer(str.length); 5 const bufView = new Uint8Array(buf); 6 return bufView; 7 } 8 const binaryDerString = window.atob(pem); 9 var binaryDer = str2ab(binaryDerString); 10 11 return window.crypto.subtle.importKey( 12 "spki", 13 binaryDer, 14 { 15 name: "RSA-OAEP", 16 hash: "SHA-1" 17 }, 18 true, 19 ["encrypt"] 20 ); 21 } 22 23 var secret_import = importRsaKey(secret); 24 25 var sig_hash = window.crypto.subtle.encrypt( 26 { 27 name: "RSA-OAEP", 28 hash: "SHA-1" 29 }, 30 secret_import, 31 signature 32 );
このようなコードで公開鍵をインポート、署名をハッシュ化したいのですが、エラーで
parameter 2 is not of type 'CryptoKey'.
とでます。公開鍵として認識されていないようです。
いろいろ検証しましたがわかりません。
あなたの回答
tips
プレビュー