Outlook for Mac和Safari 11上出現鍵操作問題。當我在Mac上試用Chrome/Firefox時,它運行良好。importKeyKey RSA-OAEP和SHA-1無法在safari上工作11
我用js的webCrypto庫: https://developer.mozilla.org/en-US/docs/Web/API/Web_Crypto_API
而且除了加密的另一個庫,需要修復Safari上的問題: https://github.com/vibornoff/webcrypto-shim
它停留在「importKey」功能級別:
window.crypto.subtle.importKey(
"jwk",
{
"kty": "RSA",
"e": E VALUE,
"n": N VALUE,
"alg": "RSA-OAEP",
"ext": true
},
{
name: "RSA-OAEP",
hash: { name: "SHA-1" },
},
true,
["encrypt"]
).then(function (publicKey) { })
的錯誤,我得到: OpeartionTypeError:會員JsonWebKey.kty是必需的,並且必須是DOMString的一個實例。
我讀到這個問題:Safari WebCrypto API RSA-OAEP encryption和解決方案接受使用'RSA-OAEP'alg和哈希'SHA-1',但我總是得到同樣的錯誤,無論我嘗試改變。
我不確定webcrypto的所有其他功能在safari 11上都能正常工作,但是我不會在這個問題上出現問題。
非常感謝。
感謝您的幫助,偉大的圖書館很好的工作。您的圖書館與'webcrypto-shim'圖書館有什麼不同?關於我的情況,突然之間的Safari瀏覽器的原始代碼,奇怪的行爲後,它不工作了一段時間。 – OriEng
'webcrypto-shim'只嘗試在一些狹窄的情況下規範化行爲,我這樣做,並增加了算法不存在的支持。至於你的代碼的隨機行爲,抱歉不能沒有更多的數據。 – rmhrisk
我剛剛嘗試了webcrypto-liner,因爲我無法使PBKDF2在Safari上工作。但在愚蠢地試圖讓它工作一段時間後,我發現webcrypto-liner無法幫助解決這個問題,文檔也說它不起作用。這真是令人沮喪。這有點奇怪,因爲Webkit顯然具有此功能https://webkit.org/blog/7790/update-on-web-cryptography/這是否意味着在Safari上執行任何類型的密鑰派生是完全不可能的? (這意味着我無法在iOS上執行此操作) – Vlad