Skip to content
  • ap@apple.com's avatar
    WebCrypto no longer uses sequences of ArrayBuffers · b651c9a6
    ap@apple.com authored
    https://bugs.webkit.org/show_bug.cgi?id=124451
    
    Reviewed by Sam Weinig.
    
    Source/WebCore: 
    
    Covered by existing tests.
    
    Changed all operations to take single CryptoOperationData objects.
    
    * bindings/js/JSCryptoOperationData.cpp:
    * bindings/js/JSCryptoOperationData.h:
    * bindings/js/JSSubtleCryptoCustom.cpp:
    (WebCore::JSSubtleCrypto::encrypt):
    (WebCore::JSSubtleCrypto::decrypt):
    (WebCore::JSSubtleCrypto::sign):
    (WebCore::JSSubtleCrypto::verify):
    (WebCore::JSSubtleCrypto::digest):
    * crypto/CryptoAlgorithm.cpp:
    (WebCore::CryptoAlgorithm::encrypt):
    (WebCore::CryptoAlgorithm::decrypt):
    (WebCore::CryptoAlgorithm::sign):
    (WebCore::CryptoAlgorithm::verify):
    (WebCore::CryptoAlgorithm::digest):
    * crypto/CryptoAlgorithm.h:
    * crypto/CryptoAlgorithmRSASSA_PKCS1_v1_5Mac.cpp:
    (WebCore::CryptoAlgorithmRSASSA_PKCS1_v1_5::sign):
    (WebCore::CryptoAlgorithmRSASSA_PKCS1_v1_5::verify):
    * crypto/algorithms/CryptoAlgorithmAES_CBC.h:
    * crypto/algorithms/CryptoAlgorithmHMAC.h:
    * crypto/algorithms/CryptoAlgorithmRSASSA_PKCS1_v1_5.h:
    * crypto/algorithms/CryptoAlgorithmSHA1.cpp:
    (WebCore::CryptoAlgorithmSHA1::digest):
    * crypto/algorithms/CryptoAlgorithmSHA1.h:
    * crypto/algorithms/CryptoAlgorithmSHA224.cpp:
    (WebCore::CryptoAlgorithmSHA224::digest):
    * crypto/algorithms/CryptoAlgorithmSHA224.h:
    * crypto/algorithms/CryptoAlgorithmSHA256.cpp:
    (WebCore::CryptoAlgorithmSHA256::digest):
    * crypto/algorithms/CryptoAlgorithmSHA256.h:
    * crypto/algorithms/CryptoAlgorithmSHA384.cpp:
    (WebCore::CryptoAlgorithmSHA384::digest):
    * crypto/algorithms/CryptoAlgorithmSHA384.h:
    * crypto/algorithms/CryptoAlgorithmSHA512.cpp:
    (WebCore::CryptoAlgorithmSHA512::digest):
    * crypto/algorithms/CryptoAlgorithmSHA512.h:
    * crypto/mac/CryptoAlgorithmAES_CBCMac.cpp:
    (WebCore::transformAES_CBC):
    (WebCore::CryptoAlgorithmAES_CBC::encrypt):
    (WebCore::CryptoAlgorithmAES_CBC::decrypt):
    * crypto/mac/CryptoAlgorithmHMACMac.cpp:
    (WebCore::calculateSignature):
    (WebCore::CryptoAlgorithmHMAC::sign):
    (WebCore::CryptoAlgorithmHMAC::verify):
    * crypto/parameters/CryptoAlgorithmRsaKeyGenParams.h:
    
    LayoutTests: 
    
    Updated tests accordingly.
    
    * crypto/subtle/aes-cbc-192-encrypt-decrypt.html:
    * crypto/subtle/aes-cbc-256-encrypt-decrypt.html:
    * crypto/subtle/aes-cbc-encrypt-decrypt-expected.txt:
    * crypto/subtle/aes-cbc-encrypt-decrypt-with-padding.html:
    * crypto/subtle/aes-cbc-encrypt-decrypt.html:
    * crypto/subtle/aes-cbc-import-jwk.html:
    * crypto/subtle/aes-cbc-wrong-key-class-expected.txt:
    * crypto/subtle/aes-cbc-wrong-key-class.html:
    * crypto/subtle/argument-conversion-expected.txt:
    * crypto/subtle/argument-conversion.html:
    * crypto/subtle/hmac-import-jwk.html:
    * crypto/subtle/hmac-sign-verify-empty-key.html:
    * crypto/subtle/hmac-sign-verify.html:
    * crypto/subtle/rsassa-pkcs1-v1_5-sign-verify.html:
    * crypto/subtle/sha-1-expected.txt:
    * crypto/subtle/sha-1.html:
    * crypto/subtle/sha-224-expected.txt:
    * crypto/subtle/sha-224.html:
    * crypto/subtle/sha-256-expected.txt:
    * crypto/subtle/sha-256.html:
    * crypto/subtle/sha-384-expected.txt:
    * crypto/subtle/sha-384.html:
    * crypto/subtle/sha-512-expected.txt:
    * crypto/subtle/sha-512.html:
    
    
    
    git-svn-id: http://svn.webkit.org/repository/webkit/trunk@159379 268f45cc-cd09-0410-ab3c-d52691b4dbfc
    b651c9a6