SubtleCrypto apiを使用して公開鍵と秘密鍵を作成しました。私はwebcrypto-shimを使用して、Safariで実装されていない微妙な方法のいくつかを克服しています。キーペアを生成し、それを使用してデータに署名できます。
次に、キーペアを IndexedDB に保存しようとしましたが、保存トランザクションが成功したようで、エラーはありません。しかし、署名のために公開鍵を再度使用したい場合は、まずIndexedDBから取得してから使用SubtleCrypto.exportKey()
しますが、エラーで失敗します
TypeError: 型エラー
私はSafariデスクトップ9.1.2で動作させようとしています.IndexedDBShimも使用しています.
保存が実際には機能せず、キーが IndexedDB に適切に保存されていないと思われます。保存トランザクションでは、キーをエクスポートせずに保存します。つまり、取得したオブジェクトを保存していますSubtleCrypto.generateKey()
。
もう 1 つのことは、同じコードが Chrome でも機能することです。