Bug 125105

Summary: Support WebCrypto AES-KW
Product: WebKit Reporter: Alexey Proskuryakov <ap>
Component: WebCore Misc.Assignee: Alexey Proskuryakov <ap>
Status: RESOLVED FIXED    
Severity: Normal CC: commit-queue
Priority: P2    
Version: 528+ (Nightly build)   
Hardware: Unspecified   
OS: Unspecified   
Bug Depends on:    
Bug Blocks: 122679    
Attachments:
Description Flags
proposed patch sam: review+

Description Alexey Proskuryakov 2013-12-02 14:14:29 PST
AES-KW is not standardized in WebCrypto yet, but there appears to be a consensus that it will be added.

Using <http://www.w3.org/2012/webcrypto/wiki/KeyWrap_Proposal> as a reference.
Comment 1 Alexey Proskuryakov 2013-12-02 14:26:21 PST
Created attachment 218216 [details]
proposed patch
Comment 2 WebKit Commit Bot 2013-12-02 14:29:25 PST
Attachment 218216 [details] did not pass style-queue:

Failed to run "['Tools/Scripts/check-webkit-style', '--diff-files', u'LayoutTests/ChangeLog', u'LayoutTests/crypto/subtle/aes-kw-key-manipulation-expected.txt', u'LayoutTests/crypto/subtle/aes-kw-key-manipulation.html', u'LayoutTests/crypto/subtle/aes-kw-wrap-unwrap-aes-expected.txt', u'LayoutTests/crypto/subtle/aes-kw-wrap-unwrap-aes.html', u'Source/WebCore/ChangeLog', u'Source/WebCore/WebCore.xcodeproj/project.pbxproj', u'Source/WebCore/bindings/js/JSCryptoAlgorithmDictionary.cpp', u'Source/WebCore/bindings/js/JSCryptoKeySerializationJWK.cpp', u'Source/WebCore/bindings/js/JSSubtleCryptoCustom.cpp', u'Source/WebCore/crypto/CryptoAlgorithmIdentifier.h', u'Source/WebCore/crypto/algorithms/CryptoAlgorithmAES_KW.cpp', u'Source/WebCore/crypto/algorithms/CryptoAlgorithmAES_KW.h', u'Source/WebCore/crypto/keys/CryptoKeyAES.cpp', u'Source/WebCore/crypto/mac/CryptoAlgorithmAES_KWMac.cpp', u'Source/WebCore/crypto/mac/CryptoAlgorithmRegistryMac.cpp']" exit_code: 1
Source/WebCore/crypto/mac/CryptoAlgorithmAES_KWMac.cpp:37:  CryptoAlgorithmAES_KW::platformEncrypt is incorrectly named. Don't use underscores in your identifier names.  [readability/naming/underscores] [4]
Source/WebCore/crypto/mac/CryptoAlgorithmAES_KWMac.cpp:50:  CryptoAlgorithmAES_KW::platformDecrypt is incorrectly named. Don't use underscores in your identifier names.  [readability/naming/underscores] [4]
Source/WebCore/crypto/algorithms/CryptoAlgorithmAES_KW.cpp:38:  CryptoAlgorithmAES_KW::s_name is incorrectly named. Don't use underscores in your identifier names.  [readability/naming/underscores] [4]
Source/WebCore/crypto/algorithms/CryptoAlgorithmAES_KW.cpp:48:  CryptoAlgorithmAES_KW::create is incorrectly named. Don't use underscores in your identifier names.  [readability/naming/underscores] [4]
Source/WebCore/crypto/algorithms/CryptoAlgorithmAES_KW.cpp:53:  CryptoAlgorithmAES_KW::identifier is incorrectly named. Don't use underscores in your identifier names.  [readability/naming/underscores] [4]
Source/WebCore/crypto/algorithms/CryptoAlgorithmAES_KW.cpp:58:  CryptoAlgorithmAES_KW::keyAlgorithmMatches is incorrectly named. Don't use underscores in your identifier names.  [readability/naming/underscores] [4]
Source/WebCore/crypto/algorithms/CryptoAlgorithmAES_KW.cpp:67:  CryptoAlgorithmAES_KW::encryptForWrapKey is incorrectly named. Don't use underscores in your identifier names.  [readability/naming/underscores] [4]
Source/WebCore/crypto/algorithms/CryptoAlgorithmAES_KW.cpp:77:  CryptoAlgorithmAES_KW::decryptForUnwrapKey is incorrectly named. Don't use underscores in your identifier names.  [readability/naming/underscores] [4]
Source/WebCore/crypto/algorithms/CryptoAlgorithmAES_KW.cpp:87:  CryptoAlgorithmAES_KW::generateKey is incorrectly named. Don't use underscores in your identifier names.  [readability/naming/underscores] [4]
Source/WebCore/crypto/algorithms/CryptoAlgorithmAES_KW.cpp:100:  CryptoAlgorithmAES_KW::importKey is incorrectly named. Don't use underscores in your identifier names.  [readability/naming/underscores] [4]
Source/WebCore/crypto/CryptoAlgorithmIdentifier.h:54:  enum members should use InterCaps with an initial capital letter.  [readability/enum_casing] [4]
Source/WebCore/crypto/CryptoAlgorithmIdentifier.h:55:  enum members should use InterCaps with an initial capital letter.  [readability/enum_casing] [4]
Total errors found: 12 in 16 files


If any of these errors are false positives, please file a bug against check-webkit-style.
Comment 3 Alexey Proskuryakov 2013-12-02 14:33:34 PST
Committed <http://trac.webkit.org/r159966>.