Changeset 158494 in webkit
- Timestamp:
- Nov 2, 2013 11:19:35 AM (10 years ago)
- Location:
- trunk
- Files:
-
- 8 added
- 4 edited
- 12 copied
Legend:
- Unmodified
- Added
- Removed
-
trunk/LayoutTests/ChangeLog
r158485 r158494 1 2013-11-02 Alexey Proskuryakov <ap@apple.com> 2 3 Implement remaining SHA variations for WebCrypto 4 https://bugs.webkit.org/show_bug.cgi?id=123659 5 6 Reviewed by Anders Carlsson. 7 8 * crypto/subtle/sha-224-expected.txt: Added. 9 * crypto/subtle/sha-224.html: Added. 10 * crypto/subtle/sha-256-expected.txt: Added. 11 * crypto/subtle/sha-256.html: Added. 12 * crypto/subtle/sha-384-expected.txt: Added. 13 * crypto/subtle/sha-384.html: Added. 14 * crypto/subtle/sha-512-expected.txt: Added. 15 * crypto/subtle/sha-512.html: Added. 16 1 17 2013-11-01 Alexey Proskuryakov <ap@apple.com> 2 18 -
trunk/Source/WebCore/ChangeLog
r158492 r158494 1 2013-11-02 Alexey Proskuryakov <ap@apple.com> 2 3 Implement remaining SHA variations for WebCrypto 4 https://bugs.webkit.org/show_bug.cgi?id=123659 5 6 Reviewed by Anders Carlsson. 7 8 Tests: crypto/subtle/sha-224.html 9 crypto/subtle/sha-256.html 10 crypto/subtle/sha-384.html 11 crypto/subtle/sha-512.html 12 13 * WebCore.xcodeproj/project.pbxproj: 14 * crypto/algorithms/CryptoAlgorithmSHA224.cpp: Added. 15 (WebCore::CryptoAlgorithmSHA224::CryptoAlgorithmSHA224): 16 (WebCore::CryptoAlgorithmSHA224::~CryptoAlgorithmSHA224): 17 (WebCore::CryptoAlgorithmSHA224::create): 18 (WebCore::CryptoAlgorithmSHA224::identifier): 19 * crypto/algorithms/CryptoAlgorithmSHA224.h: Added. 20 * crypto/algorithms/CryptoAlgorithmSHA256.cpp: Added. 21 (WebCore::CryptoAlgorithmSHA256::CryptoAlgorithmSHA256): 22 (WebCore::CryptoAlgorithmSHA256::~CryptoAlgorithmSHA256): 23 (WebCore::CryptoAlgorithmSHA256::create): 24 (WebCore::CryptoAlgorithmSHA256::identifier): 25 * crypto/algorithms/CryptoAlgorithmSHA256.h: Added. 26 * crypto/algorithms/CryptoAlgorithmSHA384.cpp: Added. 27 (WebCore::CryptoAlgorithmSHA384::CryptoAlgorithmSHA384): 28 (WebCore::CryptoAlgorithmSHA384::~CryptoAlgorithmSHA384): 29 (WebCore::CryptoAlgorithmSHA384::create): 30 (WebCore::CryptoAlgorithmSHA384::identifier): 31 * crypto/algorithms/CryptoAlgorithmSHA384.h: Added. 32 * crypto/algorithms/CryptoAlgorithmSHA512.cpp: Added. 33 (WebCore::CryptoAlgorithmSHA512::CryptoAlgorithmSHA512): 34 (WebCore::CryptoAlgorithmSHA512::~CryptoAlgorithmSHA512): 35 (WebCore::CryptoAlgorithmSHA512::create): 36 (WebCore::CryptoAlgorithmSHA512::identifier): 37 * crypto/algorithms/CryptoAlgorithmSHA512.h: Added. 38 * crypto/mac/CryptoAlgorithmRegistryMac.cpp: 39 (WebCore::CryptoAlgorithmRegistry::platformRegisterAlgorithms): 40 * crypto/mac/CryptoAlgorithmSHA224Mac.cpp: Added. 41 (WebCore::CryptoAlgorithmSHA224::digest): 42 * crypto/mac/CryptoAlgorithmSHA256Mac.cpp: Added. 43 (WebCore::CryptoAlgorithmSHA256::digest): 44 * crypto/mac/CryptoAlgorithmSHA384Mac.cpp: Added. 45 (WebCore::CryptoAlgorithmSHA384::digest): 46 * crypto/mac/CryptoAlgorithmSHA512Mac.cpp: Added. 47 (WebCore::CryptoAlgorithmSHA512::digest): 48 1 49 2013-11-02 Patrick Gansterer <paroga@webkit.org> 2 50 -
trunk/Source/WebCore/WebCore.xcodeproj/project.pbxproj
r158485 r158494 5580 5580 E18772F1126E2629003DD586 /* Language.cpp in Sources */ = {isa = PBXBuildFile; fileRef = E18772F0126E2629003DD586 /* Language.cpp */; }; 5581 5581 E19727161820549E00592D51 /* CryptoKeyType.h in Headers */ = {isa = PBXBuildFile; fileRef = E19727151820549E00592D51 /* CryptoKeyType.h */; }; 5582 E19AC3E21824DC6900349426 /* CryptoAlgorithmSHA224Mac.cpp in Sources */ = {isa = PBXBuildFile; fileRef = E19AC3DE1824DC6900349426 /* CryptoAlgorithmSHA224Mac.cpp */; }; 5583 E19AC3E31824DC6900349426 /* CryptoAlgorithmSHA256Mac.cpp in Sources */ = {isa = PBXBuildFile; fileRef = E19AC3DF1824DC6900349426 /* CryptoAlgorithmSHA256Mac.cpp */; }; 5584 E19AC3E41824DC6900349426 /* CryptoAlgorithmSHA384Mac.cpp in Sources */ = {isa = PBXBuildFile; fileRef = E19AC3E01824DC6900349426 /* CryptoAlgorithmSHA384Mac.cpp */; }; 5585 E19AC3E51824DC6900349426 /* CryptoAlgorithmSHA512Mac.cpp in Sources */ = {isa = PBXBuildFile; fileRef = E19AC3E11824DC6900349426 /* CryptoAlgorithmSHA512Mac.cpp */; }; 5586 E19AC3EE1824DC7900349426 /* CryptoAlgorithmSHA224.cpp in Sources */ = {isa = PBXBuildFile; fileRef = E19AC3E61824DC7900349426 /* CryptoAlgorithmSHA224.cpp */; }; 5587 E19AC3EF1824DC7900349426 /* CryptoAlgorithmSHA224.h in Headers */ = {isa = PBXBuildFile; fileRef = E19AC3E71824DC7900349426 /* CryptoAlgorithmSHA224.h */; }; 5588 E19AC3F01824DC7900349426 /* CryptoAlgorithmSHA256.cpp in Sources */ = {isa = PBXBuildFile; fileRef = E19AC3E81824DC7900349426 /* CryptoAlgorithmSHA256.cpp */; }; 5589 E19AC3F11824DC7900349426 /* CryptoAlgorithmSHA256.h in Headers */ = {isa = PBXBuildFile; fileRef = E19AC3E91824DC7900349426 /* CryptoAlgorithmSHA256.h */; }; 5590 E19AC3F21824DC7900349426 /* CryptoAlgorithmSHA384.cpp in Sources */ = {isa = PBXBuildFile; fileRef = E19AC3EA1824DC7900349426 /* CryptoAlgorithmSHA384.cpp */; }; 5591 E19AC3F31824DC7900349426 /* CryptoAlgorithmSHA384.h in Headers */ = {isa = PBXBuildFile; fileRef = E19AC3EB1824DC7900349426 /* CryptoAlgorithmSHA384.h */; }; 5592 E19AC3F41824DC7900349426 /* CryptoAlgorithmSHA512.cpp in Sources */ = {isa = PBXBuildFile; fileRef = E19AC3EC1824DC7900349426 /* CryptoAlgorithmSHA512.cpp */; }; 5593 E19AC3F51824DC7900349426 /* CryptoAlgorithmSHA512.h in Headers */ = {isa = PBXBuildFile; fileRef = E19AC3ED1824DC7900349426 /* CryptoAlgorithmSHA512.h */; }; 5582 5594 E19DA29C18189ADD00088BC8 /* CryptoAlgorithmHmacKeyParams.h in Headers */ = {isa = PBXBuildFile; fileRef = E19DA29B18189ADD00088BC8 /* CryptoAlgorithmHmacKeyParams.h */; }; 5583 5595 E1A1470811102B1500EEC0F3 /* ContainerNodeAlgorithms.h in Headers */ = {isa = PBXBuildFile; fileRef = E1A1470711102B1500EEC0F3 /* ContainerNodeAlgorithms.h */; }; … … 12595 12607 E18772F0126E2629003DD586 /* Language.cpp */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.cpp.cpp; path = Language.cpp; sourceTree = "<group>"; }; 12596 12608 E19727151820549E00592D51 /* CryptoKeyType.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = CryptoKeyType.h; sourceTree = "<group>"; }; 12609 E19AC3DE1824DC6900349426 /* CryptoAlgorithmSHA224Mac.cpp */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.cpp.cpp; name = CryptoAlgorithmSHA224Mac.cpp; path = mac/CryptoAlgorithmSHA224Mac.cpp; sourceTree = "<group>"; }; 12610 E19AC3DF1824DC6900349426 /* CryptoAlgorithmSHA256Mac.cpp */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.cpp.cpp; name = CryptoAlgorithmSHA256Mac.cpp; path = mac/CryptoAlgorithmSHA256Mac.cpp; sourceTree = "<group>"; }; 12611 E19AC3E01824DC6900349426 /* CryptoAlgorithmSHA384Mac.cpp */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.cpp.cpp; name = CryptoAlgorithmSHA384Mac.cpp; path = mac/CryptoAlgorithmSHA384Mac.cpp; sourceTree = "<group>"; }; 12612 E19AC3E11824DC6900349426 /* CryptoAlgorithmSHA512Mac.cpp */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.cpp.cpp; name = CryptoAlgorithmSHA512Mac.cpp; path = mac/CryptoAlgorithmSHA512Mac.cpp; sourceTree = "<group>"; }; 12613 E19AC3E61824DC7900349426 /* CryptoAlgorithmSHA224.cpp */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.cpp.cpp; path = CryptoAlgorithmSHA224.cpp; sourceTree = "<group>"; }; 12614 E19AC3E71824DC7900349426 /* CryptoAlgorithmSHA224.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = CryptoAlgorithmSHA224.h; sourceTree = "<group>"; }; 12615 E19AC3E81824DC7900349426 /* CryptoAlgorithmSHA256.cpp */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.cpp.cpp; path = CryptoAlgorithmSHA256.cpp; sourceTree = "<group>"; }; 12616 E19AC3E91824DC7900349426 /* CryptoAlgorithmSHA256.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = CryptoAlgorithmSHA256.h; sourceTree = "<group>"; }; 12617 E19AC3EA1824DC7900349426 /* CryptoAlgorithmSHA384.cpp */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.cpp.cpp; path = CryptoAlgorithmSHA384.cpp; sourceTree = "<group>"; }; 12618 E19AC3EB1824DC7900349426 /* CryptoAlgorithmSHA384.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = CryptoAlgorithmSHA384.h; sourceTree = "<group>"; }; 12619 E19AC3EC1824DC7900349426 /* CryptoAlgorithmSHA512.cpp */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.cpp.cpp; path = CryptoAlgorithmSHA512.cpp; sourceTree = "<group>"; }; 12620 E19AC3ED1824DC7900349426 /* CryptoAlgorithmSHA512.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = CryptoAlgorithmSHA512.h; sourceTree = "<group>"; }; 12597 12621 E19DA29B18189ADD00088BC8 /* CryptoAlgorithmHmacKeyParams.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; name = CryptoAlgorithmHmacKeyParams.h; path = parameters/CryptoAlgorithmHmacKeyParams.h; sourceTree = "<group>"; }; 12598 12622 E1A1470711102B1500EEC0F3 /* ContainerNodeAlgorithms.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = ContainerNodeAlgorithms.h; sourceTree = "<group>"; }; … … 20139 20163 E1BB84AC1822CA7400525043 /* CryptoAlgorithmRegistryMac.cpp */, 20140 20164 E125F82D1822CFFF00D84CD9 /* CryptoAlgorithmSHA1Mac.cpp */, 20165 E19AC3DE1824DC6900349426 /* CryptoAlgorithmSHA224Mac.cpp */, 20166 E19AC3DF1824DC6900349426 /* CryptoAlgorithmSHA256Mac.cpp */, 20167 E19AC3E01824DC6900349426 /* CryptoAlgorithmSHA384Mac.cpp */, 20168 E19AC3E11824DC6900349426 /* CryptoAlgorithmSHA512Mac.cpp */, 20141 20169 ); 20142 20170 name = mac; … … 20152 20180 E125F8291822CFEC00D84CD9 /* CryptoAlgorithmSHA1.cpp */, 20153 20181 E125F82A1822CFEC00D84CD9 /* CryptoAlgorithmSHA1.h */, 20182 E19AC3E61824DC7900349426 /* CryptoAlgorithmSHA224.cpp */, 20183 E19AC3E71824DC7900349426 /* CryptoAlgorithmSHA224.h */, 20184 E19AC3E81824DC7900349426 /* CryptoAlgorithmSHA256.cpp */, 20185 E19AC3E91824DC7900349426 /* CryptoAlgorithmSHA256.h */, 20186 E19AC3EA1824DC7900349426 /* CryptoAlgorithmSHA384.cpp */, 20187 E19AC3EB1824DC7900349426 /* CryptoAlgorithmSHA384.h */, 20188 E19AC3EC1824DC7900349426 /* CryptoAlgorithmSHA512.cpp */, 20189 E19AC3ED1824DC7900349426 /* CryptoAlgorithmSHA512.h */, 20154 20190 ); 20155 20191 path = algorithms; … … 21695 21731 29A8122B0FBB9C1D00510293 /* AccessibilityTable.h in Headers */, 21696 21732 29A812320FBB9C1D00510293 /* AccessibilityTableCell.h in Headers */, 21733 E19AC3F11824DC7900349426 /* CryptoAlgorithmSHA256.h in Headers */, 21697 21734 29A812410FBB9C1D00510293 /* AccessibilityTableColumn.h in Headers */, 21698 21735 29A8123F0FBB9C1D00510293 /* AccessibilityTableHeaderContainer.h in Headers */, … … 23076 23113 52CCA9E315E3F62C0053C77F /* JSDOMNamedFlowCollection.h in Headers */, 23077 23114 1ACE53E00A8D18810022947D /* JSDOMParser.h in Headers */, 23115 E19AC3F31824DC7900349426 /* CryptoAlgorithmSHA384.h in Headers */, 23078 23116 FB91392A16AE4FC0001FE682 /* JSDOMPath.h in Headers */, 23079 23117 A9D247FF0D757E6900FDF959 /* JSDOMPlugin.h in Headers */, … … 23345 23383 8542A7990AE5C94400DF58DF /* JSSVGElementWrapperFactory.h in Headers */, 23346 23384 B2FA3D690AB75A6F000E5AC4 /* JSSVGEllipseElement.h in Headers */, 23385 E19AC3EF1824DC7900349426 /* CryptoAlgorithmSHA224.h in Headers */, 23347 23386 078E092B17D14D1C00420AA1 /* RTCStatsRequestImpl.h in Headers */, 23348 23387 B266CD4E0C3AEC6500EB08D2 /* JSSVGException.h in Headers */, … … 24709 24748 07C59B5717F4AC15000FBCBB /* VideoStreamTrack.h in Headers */, 24710 24749 49C7B9C91042D32F0009D447 /* WebGLBuffer.h in Headers */, 24750 E19AC3F51824DC7900349426 /* CryptoAlgorithmSHA512.h in Headers */, 24711 24751 7E66E23416D6EB6C00F7E7FF /* WebGLCompressedTextureATC.h in Headers */, 24712 24752 7E66E23417E6EB6C00F7E7FF /* WebGLCompressedTexturePVRTC.h in Headers */, … … 25392 25432 37C238221098C84200EF9F72 /* ComplexTextControllerCoreText.mm in Sources */, 25393 25433 316FE1150E6E1DA700BF6088 /* CompositeAnimation.cpp in Sources */, 25434 E19AC3E31824DC6900349426 /* CryptoAlgorithmSHA256Mac.cpp in Sources */, 25394 25435 93309DDC099E64920056E581 /* CompositeEditCommand.cpp in Sources */, 25395 25436 79F2F5A11091939A000D87CB /* CompositionEvent.cpp in Sources */, … … 26075 26116 93442CA00D2B336000338FF9 /* HTMLTableRowsCollection.cpp in Sources */, 26076 26117 A871DB260A150BD600B12A68 /* HTMLTableSectionElement.cpp in Sources */, 26118 E19AC3F01824DC7900349426 /* CryptoAlgorithmSHA256.cpp in Sources */, 26077 26119 511EF2CB17F0FD3500E4FA16 /* JSIDBVersionChangeEvent.cpp in Sources */, 26078 26120 D66817FA166FE6D700FA07B4 /* HTMLTemplateElement.cpp in Sources */, … … 26390 26432 938E65F709F0985D008A48EC /* JSHTMLElementWrapperFactory.cpp in Sources */, 26391 26433 BC6D44EC0C07F2ED0072D2C9 /* JSHTMLEmbedElement.cpp in Sources */, 26434 E19AC3EE1824DC7900349426 /* CryptoAlgorithmSHA224.cpp in Sources */, 26392 26435 BC6D44BE0C07EFB60072D2C9 /* JSHTMLEmbedElementCustom.cpp in Sources */, 26393 26436 1AE2AA260A1CDAB400B42B25 /* JSHTMLFieldSetElement.cpp in Sources */, … … 26479 26522 FD23A12513F5FA5900F67001 /* JSMediaElementAudioSourceNode.cpp in Sources */, 26480 26523 E44614180CD6826900FADA75 /* JSMediaError.cpp in Sources */, 26524 E19AC3F41824DC7900349426 /* CryptoAlgorithmSHA512.cpp in Sources */, 26481 26525 CDA98DA31601464100FEA3B1 /* JSMediaKeyError.cpp in Sources */, 26482 26526 CDB859FA160D494900E5B07F /* JSMediaKeyEvent.cpp in Sources */, … … 26948 26992 85031B490A44EFC700F992E0 /* MutationEvent.cpp in Sources */, 26949 26993 C6F0900E14327B6100685849 /* MutationObserver.cpp in Sources */, 26994 E19AC3E51824DC6900349426 /* CryptoAlgorithmSHA512Mac.cpp in Sources */, 26950 26995 D6E528A3149A926D00EFE1F3 /* MutationObserverInterestGroup.cpp in Sources */, 26951 26996 D6E276AF14637455001D280A /* MutationObserverRegistration.cpp in Sources */, … … 27315 27360 BCD0E0FA0E972C3500265DEA /* SecurityOrigin.cpp in Sources */, 27316 27361 974D2DA4146A535D00D51F8B /* SecurityPolicy.cpp in Sources */, 27362 E19AC3E21824DC6900349426 /* CryptoAlgorithmSHA224Mac.cpp in Sources */, 27317 27363 371F4FFD0D25E7F300ECE0D5 /* SegmentedFontData.cpp in Sources */, 27318 27364 B2C3DA2E0D006C1D00EF6F26 /* SegmentedString.cpp in Sources */, … … 27507 27553 B22279AD0D00BF220071B782 /* SVGDefsElement.cpp in Sources */, 27508 27554 B22279B00D00BF220071B782 /* SVGDescElement.cpp in Sources */, 27555 E19AC3F21824DC7900349426 /* CryptoAlgorithmSHA384.cpp in Sources */, 27509 27556 CDE3A85717F6020400C5BE20 /* AudioTrackPrivateAVFObjC.mm in Sources */, 27510 27557 B22279B30D00BF220071B782 /* SVGDocument.cpp in Sources */, … … 27888 27935 BC772C460C4EB2C60083285F /* XMLHttpRequest.cpp in Sources */, 27889 27936 978D07CE145A10370096908D /* XMLHttpRequestException.cpp in Sources */, 27937 E19AC3E41824DC6900349426 /* CryptoAlgorithmSHA384Mac.cpp in Sources */, 27890 27938 A136A00C1134DBD200CC8D50 /* XMLHttpRequestProgressEventThrottle.cpp in Sources */, 27891 27939 BCDFD48F0E305290009D10AD /* XMLHttpRequestUpload.cpp in Sources */, -
trunk/Source/WebCore/crypto/algorithms/CryptoAlgorithmSHA224.cpp
r158493 r158494 25 25 26 26 #include "config.h" 27 #include "CryptoAlgorithm Registry.h"27 #include "CryptoAlgorithmSHA224.h" 28 28 29 29 #if ENABLE(SUBTLE_CRYPTO) 30 30 31 #include "CryptoAlgorithmAES_CBC.h"32 #include "CryptoAlgorithmHMAC.h"33 #include "CryptoAlgorithmSHA1.h"34 35 31 namespace WebCore { 36 32 37 void CryptoAlgorithmRegistry::platformRegisterAlgorithms() 33 const char* const CryptoAlgorithmSHA224::s_name = "sha-224"; 34 35 CryptoAlgorithmSHA224::CryptoAlgorithmSHA224() 38 36 { 39 registerAlgorithm(CryptoAlgorithmAES_CBC::s_name, CryptoAlgorithmAES_CBC::s_identifier, CryptoAlgorithmAES_CBC::create); 40 registerAlgorithm(CryptoAlgorithmHMAC::s_name, CryptoAlgorithmHMAC::s_identifier, CryptoAlgorithmHMAC::create); 41 registerAlgorithm(CryptoAlgorithmSHA1::s_name, CryptoAlgorithmSHA1::s_identifier, CryptoAlgorithmSHA1::create); 37 } 38 39 CryptoAlgorithmSHA224::~CryptoAlgorithmSHA224() 40 { 41 } 42 43 std::unique_ptr<CryptoAlgorithm> CryptoAlgorithmSHA224::create() 44 { 45 return std::unique_ptr<CryptoAlgorithm>(new CryptoAlgorithmSHA224); 46 } 47 48 CryptoAlgorithmIdentifier CryptoAlgorithmSHA224::identifier() const 49 { 50 return s_identifier; 42 51 } 43 52 -
trunk/Source/WebCore/crypto/algorithms/CryptoAlgorithmSHA224.h
r158493 r158494 24 24 */ 25 25 26 #include "config.h" 27 #include "CryptoAlgorithmRegistry.h" 26 #ifndef CryptoAlgorithmSHA224_h 27 #define CryptoAlgorithmSHA224_h 28 29 #include "CryptoAlgorithm.h" 28 30 29 31 #if ENABLE(SUBTLE_CRYPTO) 30 32 31 #include "CryptoAlgorithmAES_CBC.h"32 #include "CryptoAlgorithmHMAC.h"33 #include "CryptoAlgorithmSHA1.h"34 35 33 namespace WebCore { 36 34 37 void CryptoAlgorithmRegistry::platformRegisterAlgorithms() 38 { 39 registerAlgorithm(CryptoAlgorithmAES_CBC::s_name, CryptoAlgorithmAES_CBC::s_identifier, CryptoAlgorithmAES_CBC::create); 40 registerAlgorithm(CryptoAlgorithmHMAC::s_name, CryptoAlgorithmHMAC::s_identifier, CryptoAlgorithmHMAC::create); 41 registerAlgorithm(CryptoAlgorithmSHA1::s_name, CryptoAlgorithmSHA1::s_identifier, CryptoAlgorithmSHA1::create); 42 } 35 class CryptoAlgorithmSHA224 FINAL : public CryptoAlgorithm { 36 public: 37 static const char* const s_name; 38 static const CryptoAlgorithmIdentifier s_identifier = CryptoAlgorithmIdentifier::SHA_224; 39 40 static std::unique_ptr<CryptoAlgorithm> create(); 41 42 virtual CryptoAlgorithmIdentifier identifier() const OVERRIDE; 43 44 virtual void digest(const CryptoAlgorithmParameters&, const Vector<CryptoOperationData>&, std::unique_ptr<PromiseWrapper>, ExceptionCode&) OVERRIDE; 45 46 private: 47 CryptoAlgorithmSHA224(); 48 virtual ~CryptoAlgorithmSHA224(); 49 }; 43 50 44 51 } 45 52 46 53 #endif // ENABLE(SUBTLE_CRYPTO) 54 #endif // CryptoAlgorithmSHA224_h -
trunk/Source/WebCore/crypto/algorithms/CryptoAlgorithmSHA256.cpp
r158493 r158494 25 25 26 26 #include "config.h" 27 #include "CryptoAlgorithm Registry.h"27 #include "CryptoAlgorithmSHA256.h" 28 28 29 29 #if ENABLE(SUBTLE_CRYPTO) 30 30 31 #include "CryptoAlgorithmAES_CBC.h"32 #include "CryptoAlgorithmHMAC.h"33 #include "CryptoAlgorithmSHA1.h"34 35 31 namespace WebCore { 36 32 37 void CryptoAlgorithmRegistry::platformRegisterAlgorithms() 33 const char* const CryptoAlgorithmSHA256::s_name = "sha-256"; 34 35 CryptoAlgorithmSHA256::CryptoAlgorithmSHA256() 38 36 { 39 registerAlgorithm(CryptoAlgorithmAES_CBC::s_name, CryptoAlgorithmAES_CBC::s_identifier, CryptoAlgorithmAES_CBC::create); 40 registerAlgorithm(CryptoAlgorithmHMAC::s_name, CryptoAlgorithmHMAC::s_identifier, CryptoAlgorithmHMAC::create); 41 registerAlgorithm(CryptoAlgorithmSHA1::s_name, CryptoAlgorithmSHA1::s_identifier, CryptoAlgorithmSHA1::create); 37 } 38 39 CryptoAlgorithmSHA256::~CryptoAlgorithmSHA256() 40 { 41 } 42 43 std::unique_ptr<CryptoAlgorithm> CryptoAlgorithmSHA256::create() 44 { 45 return std::unique_ptr<CryptoAlgorithm>(new CryptoAlgorithmSHA256); 46 } 47 48 CryptoAlgorithmIdentifier CryptoAlgorithmSHA256::identifier() const 49 { 50 return s_identifier; 42 51 } 43 52 -
trunk/Source/WebCore/crypto/algorithms/CryptoAlgorithmSHA256.h
r158493 r158494 24 24 */ 25 25 26 #include "config.h" 27 #include "CryptoAlgorithmRegistry.h" 26 #ifndef CryptoAlgorithmSHA256_h 27 #define CryptoAlgorithmSHA256_h 28 29 #include "CryptoAlgorithm.h" 28 30 29 31 #if ENABLE(SUBTLE_CRYPTO) 30 32 31 #include "CryptoAlgorithmAES_CBC.h"32 #include "CryptoAlgorithmHMAC.h"33 #include "CryptoAlgorithmSHA1.h"34 35 33 namespace WebCore { 36 34 37 void CryptoAlgorithmRegistry::platformRegisterAlgorithms() 38 { 39 registerAlgorithm(CryptoAlgorithmAES_CBC::s_name, CryptoAlgorithmAES_CBC::s_identifier, CryptoAlgorithmAES_CBC::create); 40 registerAlgorithm(CryptoAlgorithmHMAC::s_name, CryptoAlgorithmHMAC::s_identifier, CryptoAlgorithmHMAC::create); 41 registerAlgorithm(CryptoAlgorithmSHA1::s_name, CryptoAlgorithmSHA1::s_identifier, CryptoAlgorithmSHA1::create); 42 } 35 class CryptoAlgorithmSHA256 FINAL : public CryptoAlgorithm { 36 public: 37 static const char* const s_name; 38 static const CryptoAlgorithmIdentifier s_identifier = CryptoAlgorithmIdentifier::SHA_256; 39 40 static std::unique_ptr<CryptoAlgorithm> create(); 41 42 virtual CryptoAlgorithmIdentifier identifier() const OVERRIDE; 43 44 virtual void digest(const CryptoAlgorithmParameters&, const Vector<CryptoOperationData>&, std::unique_ptr<PromiseWrapper>, ExceptionCode&) OVERRIDE; 45 46 private: 47 CryptoAlgorithmSHA256(); 48 virtual ~CryptoAlgorithmSHA256(); 49 }; 43 50 44 51 } 45 52 46 53 #endif // ENABLE(SUBTLE_CRYPTO) 54 #endif // CryptoAlgorithmSHA256_h -
trunk/Source/WebCore/crypto/algorithms/CryptoAlgorithmSHA384.cpp
r158493 r158494 25 25 26 26 #include "config.h" 27 #include "CryptoAlgorithm Registry.h"27 #include "CryptoAlgorithmSHA384.h" 28 28 29 29 #if ENABLE(SUBTLE_CRYPTO) 30 30 31 #include "CryptoAlgorithmAES_CBC.h"32 #include "CryptoAlgorithmHMAC.h"33 #include "CryptoAlgorithmSHA1.h"34 35 31 namespace WebCore { 36 32 37 void CryptoAlgorithmRegistry::platformRegisterAlgorithms() 33 const char* const CryptoAlgorithmSHA384::s_name = "sha-384"; 34 35 CryptoAlgorithmSHA384::CryptoAlgorithmSHA384() 38 36 { 39 registerAlgorithm(CryptoAlgorithmAES_CBC::s_name, CryptoAlgorithmAES_CBC::s_identifier, CryptoAlgorithmAES_CBC::create); 40 registerAlgorithm(CryptoAlgorithmHMAC::s_name, CryptoAlgorithmHMAC::s_identifier, CryptoAlgorithmHMAC::create); 41 registerAlgorithm(CryptoAlgorithmSHA1::s_name, CryptoAlgorithmSHA1::s_identifier, CryptoAlgorithmSHA1::create); 37 } 38 39 CryptoAlgorithmSHA384::~CryptoAlgorithmSHA384() 40 { 41 } 42 43 std::unique_ptr<CryptoAlgorithm> CryptoAlgorithmSHA384::create() 44 { 45 return std::unique_ptr<CryptoAlgorithm>(new CryptoAlgorithmSHA384); 46 } 47 48 CryptoAlgorithmIdentifier CryptoAlgorithmSHA384::identifier() const 49 { 50 return s_identifier; 42 51 } 43 52 -
trunk/Source/WebCore/crypto/algorithms/CryptoAlgorithmSHA384.h
r158493 r158494 24 24 */ 25 25 26 #include "config.h" 27 #include "CryptoAlgorithmRegistry.h" 26 #ifndef CryptoAlgorithmSHA384_h 27 #define CryptoAlgorithmSHA384_h 28 29 #include "CryptoAlgorithm.h" 28 30 29 31 #if ENABLE(SUBTLE_CRYPTO) 30 32 31 #include "CryptoAlgorithmAES_CBC.h"32 #include "CryptoAlgorithmHMAC.h"33 #include "CryptoAlgorithmSHA1.h"34 35 33 namespace WebCore { 36 34 37 void CryptoAlgorithmRegistry::platformRegisterAlgorithms() 38 { 39 registerAlgorithm(CryptoAlgorithmAES_CBC::s_name, CryptoAlgorithmAES_CBC::s_identifier, CryptoAlgorithmAES_CBC::create); 40 registerAlgorithm(CryptoAlgorithmHMAC::s_name, CryptoAlgorithmHMAC::s_identifier, CryptoAlgorithmHMAC::create); 41 registerAlgorithm(CryptoAlgorithmSHA1::s_name, CryptoAlgorithmSHA1::s_identifier, CryptoAlgorithmSHA1::create); 42 } 35 class CryptoAlgorithmSHA384 FINAL : public CryptoAlgorithm { 36 public: 37 static const char* const s_name; 38 static const CryptoAlgorithmIdentifier s_identifier = CryptoAlgorithmIdentifier::SHA_384; 39 40 static std::unique_ptr<CryptoAlgorithm> create(); 41 42 virtual CryptoAlgorithmIdentifier identifier() const OVERRIDE; 43 44 virtual void digest(const CryptoAlgorithmParameters&, const Vector<CryptoOperationData>&, std::unique_ptr<PromiseWrapper>, ExceptionCode&) OVERRIDE; 45 46 private: 47 CryptoAlgorithmSHA384(); 48 virtual ~CryptoAlgorithmSHA384(); 49 }; 43 50 44 51 } 45 52 46 53 #endif // ENABLE(SUBTLE_CRYPTO) 54 #endif // CryptoAlgorithmSHA384_h -
trunk/Source/WebCore/crypto/algorithms/CryptoAlgorithmSHA512.cpp
r158493 r158494 25 25 26 26 #include "config.h" 27 #include "CryptoAlgorithm Registry.h"27 #include "CryptoAlgorithmSHA512.h" 28 28 29 29 #if ENABLE(SUBTLE_CRYPTO) 30 30 31 #include "CryptoAlgorithmAES_CBC.h"32 #include "CryptoAlgorithmHMAC.h"33 #include "CryptoAlgorithmSHA1.h"34 35 31 namespace WebCore { 36 32 37 void CryptoAlgorithmRegistry::platformRegisterAlgorithms() 33 const char* const CryptoAlgorithmSHA512::s_name = "sha-512"; 34 35 CryptoAlgorithmSHA512::CryptoAlgorithmSHA512() 38 36 { 39 registerAlgorithm(CryptoAlgorithmAES_CBC::s_name, CryptoAlgorithmAES_CBC::s_identifier, CryptoAlgorithmAES_CBC::create); 40 registerAlgorithm(CryptoAlgorithmHMAC::s_name, CryptoAlgorithmHMAC::s_identifier, CryptoAlgorithmHMAC::create); 41 registerAlgorithm(CryptoAlgorithmSHA1::s_name, CryptoAlgorithmSHA1::s_identifier, CryptoAlgorithmSHA1::create); 37 } 38 39 CryptoAlgorithmSHA512::~CryptoAlgorithmSHA512() 40 { 41 } 42 43 std::unique_ptr<CryptoAlgorithm> CryptoAlgorithmSHA512::create() 44 { 45 return std::unique_ptr<CryptoAlgorithm>(new CryptoAlgorithmSHA512); 46 } 47 48 CryptoAlgorithmIdentifier CryptoAlgorithmSHA512::identifier() const 49 { 50 return s_identifier; 42 51 } 43 52 -
trunk/Source/WebCore/crypto/algorithms/CryptoAlgorithmSHA512.h
r158493 r158494 24 24 */ 25 25 26 #include "config.h" 27 #include "CryptoAlgorithmRegistry.h" 26 #ifndef CryptoAlgorithmSHA512_h 27 #define CryptoAlgorithmSHA512_h 28 29 #include "CryptoAlgorithm.h" 28 30 29 31 #if ENABLE(SUBTLE_CRYPTO) 30 32 31 #include "CryptoAlgorithmAES_CBC.h"32 #include "CryptoAlgorithmHMAC.h"33 #include "CryptoAlgorithmSHA1.h"34 35 33 namespace WebCore { 36 34 37 void CryptoAlgorithmRegistry::platformRegisterAlgorithms() 38 { 39 registerAlgorithm(CryptoAlgorithmAES_CBC::s_name, CryptoAlgorithmAES_CBC::s_identifier, CryptoAlgorithmAES_CBC::create); 40 registerAlgorithm(CryptoAlgorithmHMAC::s_name, CryptoAlgorithmHMAC::s_identifier, CryptoAlgorithmHMAC::create); 41 registerAlgorithm(CryptoAlgorithmSHA1::s_name, CryptoAlgorithmSHA1::s_identifier, CryptoAlgorithmSHA1::create); 42 } 35 class CryptoAlgorithmSHA512 FINAL : public CryptoAlgorithm { 36 public: 37 static const char* const s_name; 38 static const CryptoAlgorithmIdentifier s_identifier = CryptoAlgorithmIdentifier::SHA_512; 39 40 static std::unique_ptr<CryptoAlgorithm> create(); 41 42 virtual CryptoAlgorithmIdentifier identifier() const OVERRIDE; 43 44 virtual void digest(const CryptoAlgorithmParameters&, const Vector<CryptoOperationData>&, std::unique_ptr<PromiseWrapper>, ExceptionCode&) OVERRIDE; 45 46 private: 47 CryptoAlgorithmSHA512(); 48 virtual ~CryptoAlgorithmSHA512(); 49 }; 43 50 44 51 } 45 52 46 53 #endif // ENABLE(SUBTLE_CRYPTO) 54 #endif // CryptoAlgorithmSHA512_h -
trunk/Source/WebCore/crypto/mac/CryptoAlgorithmRegistryMac.cpp
r158485 r158494 32 32 #include "CryptoAlgorithmHMAC.h" 33 33 #include "CryptoAlgorithmSHA1.h" 34 #include "CryptoAlgorithmSHA224.h" 35 #include "CryptoAlgorithmSHA256.h" 36 #include "CryptoAlgorithmSHA384.h" 37 #include "CryptoAlgorithmSHA512.h" 34 38 35 39 namespace WebCore { … … 40 44 registerAlgorithm(CryptoAlgorithmHMAC::s_name, CryptoAlgorithmHMAC::s_identifier, CryptoAlgorithmHMAC::create); 41 45 registerAlgorithm(CryptoAlgorithmSHA1::s_name, CryptoAlgorithmSHA1::s_identifier, CryptoAlgorithmSHA1::create); 46 registerAlgorithm(CryptoAlgorithmSHA224::s_name, CryptoAlgorithmSHA224::s_identifier, CryptoAlgorithmSHA224::create); 47 registerAlgorithm(CryptoAlgorithmSHA256::s_name, CryptoAlgorithmSHA256::s_identifier, CryptoAlgorithmSHA256::create); 48 registerAlgorithm(CryptoAlgorithmSHA384::s_name, CryptoAlgorithmSHA384::s_identifier, CryptoAlgorithmSHA384::create); 49 registerAlgorithm(CryptoAlgorithmSHA512::s_name, CryptoAlgorithmSHA512::s_identifier, CryptoAlgorithmSHA512::create); 42 50 } 43 51 -
trunk/Source/WebCore/crypto/mac/CryptoAlgorithmSHA224Mac.cpp
r158493 r158494 25 25 26 26 #include "config.h" 27 #include "CryptoAlgorithm Registry.h"27 #include "CryptoAlgorithmSHA224.h" 28 28 29 29 #if ENABLE(SUBTLE_CRYPTO) 30 30 31 #include "CryptoAlgorithmAES_CBC.h" 32 #include "CryptoAlgorithmHMAC.h" 33 #include "CryptoAlgorithmSHA1.h" 31 #include "JSDOMPromise.h" 32 #include <CommonCrypto/CommonCrypto.h> 34 33 35 34 namespace WebCore { 36 35 37 void CryptoAlgorithm Registry::platformRegisterAlgorithms()36 void CryptoAlgorithmSHA224::digest(const CryptoAlgorithmParameters&, const Vector<CryptoOperationData>& data, std::unique_ptr<PromiseWrapper> promise, ExceptionCode&) 38 37 { 39 registerAlgorithm(CryptoAlgorithmAES_CBC::s_name, CryptoAlgorithmAES_CBC::s_identifier, CryptoAlgorithmAES_CBC::create); 40 registerAlgorithm(CryptoAlgorithmHMAC::s_name, CryptoAlgorithmHMAC::s_identifier, CryptoAlgorithmHMAC::create); 41 registerAlgorithm(CryptoAlgorithmSHA1::s_name, CryptoAlgorithmSHA1::s_identifier, CryptoAlgorithmSHA1::create); 38 Vector<unsigned char> result(CC_SHA224_DIGEST_LENGTH); 39 40 CC_SHA256_CTX context; // Same context struct is used for SHA224 and SHA256. 41 CC_SHA224_Init(&context); 42 43 for (size_t i = 0, size = data.size(); i < size; ++i) 44 CC_SHA224_Update(&context, data[i].first, data[i].second); 45 46 CC_SHA224_Final(result.data(), &context); 47 48 promise->fulfill(result); 42 49 } 43 50 -
trunk/Source/WebCore/crypto/mac/CryptoAlgorithmSHA256Mac.cpp
r158493 r158494 25 25 26 26 #include "config.h" 27 #include "CryptoAlgorithm Registry.h"27 #include "CryptoAlgorithmSHA256.h" 28 28 29 29 #if ENABLE(SUBTLE_CRYPTO) 30 30 31 #include "CryptoAlgorithmAES_CBC.h" 32 #include "CryptoAlgorithmHMAC.h" 33 #include "CryptoAlgorithmSHA1.h" 31 #include "JSDOMPromise.h" 32 #include <CommonCrypto/CommonCrypto.h> 34 33 35 34 namespace WebCore { 36 35 37 void CryptoAlgorithm Registry::platformRegisterAlgorithms()36 void CryptoAlgorithmSHA256::digest(const CryptoAlgorithmParameters&, const Vector<CryptoOperationData>& data, std::unique_ptr<PromiseWrapper> promise, ExceptionCode&) 38 37 { 39 registerAlgorithm(CryptoAlgorithmAES_CBC::s_name, CryptoAlgorithmAES_CBC::s_identifier, CryptoAlgorithmAES_CBC::create); 40 registerAlgorithm(CryptoAlgorithmHMAC::s_name, CryptoAlgorithmHMAC::s_identifier, CryptoAlgorithmHMAC::create); 41 registerAlgorithm(CryptoAlgorithmSHA1::s_name, CryptoAlgorithmSHA1::s_identifier, CryptoAlgorithmSHA1::create); 38 Vector<unsigned char> result(CC_SHA256_DIGEST_LENGTH); 39 40 CC_SHA256_CTX context; 41 CC_SHA256_Init(&context); 42 43 for (size_t i = 0, size = data.size(); i < size; ++i) 44 CC_SHA256_Update(&context, data[i].first, data[i].second); 45 46 CC_SHA256_Final(result.data(), &context); 47 48 promise->fulfill(result); 42 49 } 43 50 -
trunk/Source/WebCore/crypto/mac/CryptoAlgorithmSHA384Mac.cpp
r158493 r158494 25 25 26 26 #include "config.h" 27 #include "CryptoAlgorithm Registry.h"27 #include "CryptoAlgorithmSHA384.h" 28 28 29 29 #if ENABLE(SUBTLE_CRYPTO) 30 30 31 #include "CryptoAlgorithmAES_CBC.h" 32 #include "CryptoAlgorithmHMAC.h" 33 #include "CryptoAlgorithmSHA1.h" 31 #include "JSDOMPromise.h" 32 #include <CommonCrypto/CommonCrypto.h> 34 33 35 34 namespace WebCore { 36 35 37 void CryptoAlgorithm Registry::platformRegisterAlgorithms()36 void CryptoAlgorithmSHA384::digest(const CryptoAlgorithmParameters&, const Vector<CryptoOperationData>& data, std::unique_ptr<PromiseWrapper> promise, ExceptionCode&) 38 37 { 39 registerAlgorithm(CryptoAlgorithmAES_CBC::s_name, CryptoAlgorithmAES_CBC::s_identifier, CryptoAlgorithmAES_CBC::create); 40 registerAlgorithm(CryptoAlgorithmHMAC::s_name, CryptoAlgorithmHMAC::s_identifier, CryptoAlgorithmHMAC::create); 41 registerAlgorithm(CryptoAlgorithmSHA1::s_name, CryptoAlgorithmSHA1::s_identifier, CryptoAlgorithmSHA1::create); 38 Vector<unsigned char> result(CC_SHA384_DIGEST_LENGTH); 39 40 CC_SHA512_CTX context; // Same context struct is used for SHA384 and SHA512. 41 CC_SHA384_Init(&context); 42 43 for (size_t i = 0, size = data.size(); i < size; ++i) 44 CC_SHA384_Update(&context, data[i].first, data[i].second); 45 46 CC_SHA384_Final(result.data(), &context); 47 48 promise->fulfill(result); 42 49 } 43 50 -
trunk/Source/WebCore/crypto/mac/CryptoAlgorithmSHA512Mac.cpp
r158493 r158494 25 25 26 26 #include "config.h" 27 #include "CryptoAlgorithm Registry.h"27 #include "CryptoAlgorithmSHA512.h" 28 28 29 29 #if ENABLE(SUBTLE_CRYPTO) 30 30 31 #include "CryptoAlgorithmAES_CBC.h" 32 #include "CryptoAlgorithmHMAC.h" 33 #include "CryptoAlgorithmSHA1.h" 31 #include "JSDOMPromise.h" 32 #include <CommonCrypto/CommonCrypto.h> 34 33 35 34 namespace WebCore { 36 35 37 void CryptoAlgorithm Registry::platformRegisterAlgorithms()36 void CryptoAlgorithmSHA512::digest(const CryptoAlgorithmParameters&, const Vector<CryptoOperationData>& data, std::unique_ptr<PromiseWrapper> promise, ExceptionCode&) 38 37 { 39 registerAlgorithm(CryptoAlgorithmAES_CBC::s_name, CryptoAlgorithmAES_CBC::s_identifier, CryptoAlgorithmAES_CBC::create); 40 registerAlgorithm(CryptoAlgorithmHMAC::s_name, CryptoAlgorithmHMAC::s_identifier, CryptoAlgorithmHMAC::create); 41 registerAlgorithm(CryptoAlgorithmSHA1::s_name, CryptoAlgorithmSHA1::s_identifier, CryptoAlgorithmSHA1::create); 38 Vector<unsigned char> result(CC_SHA512_DIGEST_LENGTH); 39 40 CC_SHA512_CTX context; 41 CC_SHA512_Init(&context); 42 43 for (size_t i = 0, size = data.size(); i < size; ++i) 44 CC_SHA512_Update(&context, data[i].first, data[i].second); 45 46 CC_SHA512_Final(result.data(), &context); 47 48 promise->fulfill(result); 42 49 } 43 50
Note: See TracChangeset
for help on using the changeset viewer.