Web Cryptography API

Crypto オブジェクト (DOM)

[24] Crypto オブジェクトは、 暗号技術の API を提供するものです。 window.crypto (大域オブジェクトcrypto IDL属性) としてアクセスできます。

仕様書

メンバー

[1]

[44] 多くのメンバーは旧 Netscape 時代に実装されたもので、現在は廃止されています。

form signing も参照。

歴史

[43] JavaScript crypto - Archive of obsolete content | MDN ( 版) https://developer.mozilla.org/en-US/docs/Archive/Mozilla/JavaScript_crypto

[8] Web Crypto API — An Authentification of Data and People in SSL ( ( 版)) http://html5.creation.net/webcrypto-api/

[9] Web Cryptography Next Steps: Authentication, Hardware Tokens and Beyond ( ( 版)) http://www.w3.org/2012/webcrypto/webcrypto-next-workshop/

[2] [whatwg] Cryptographically strong random numbers ( ( 版)) http://lists.whatwg.org/htdig.cgi/whatwg-whatwg.org/2011-February/030241.html

[3] Crypto - WHATWG Wiki ( 版) http://wiki.whatwg.org/wiki/Crypto

[4] IRC logs: freenode / #whatwg / 20110215 ( ( 版)) http://krijnhoetmer.nl/irc-logs/whatwg/20110215

[49] Privacy/Features/DOMCryptAPISpec/Latest - MozillaWiki ( ( 版)) https://wiki.mozilla.org/Privacy/Features/DOMCryptAPISpec/Latest

[27] [whatwg] window.cipher HTML crypto API draft spec ( ( 版)) http://lists.whatwg.org/htdig.cgi/whatwg-whatwg.org/2011-May/031741.html

[25] [whatwg] DOMCrypt update: July 14 Meeting Report ( ( 版)) http://lists.whatwg.org/htdig.cgi/whatwg-whatwg.org/2011-July/032628.html

[28] IRC logs: freenode / #whatwg / 20110818 ( ( 版)) http://krijnhoetmer.nl/irc-logs/whatwg/20110818

[35] 649154 – (domcrypt) Implement DOMCrypt (Internal) API ( 版) https://bugzilla.mozilla.org/show_bug.cgi?id=649154

[29] Bug 440046 – expose secure PRNG in window.crypto ( ( 版)) https://bugzilla.mozilla.org/show_bug.cgi?id=440046

[30] Bug 673432 – Implement window.crypto.getRandomValues for e10s/mobile ( ( 版)) https://bugzilla.mozilla.org/show_bug.cgi?id=673432

[31] Bug 22049 – WebKit should have a cryptographic RNG ( ( 版)) https://bugs.webkit.org/show_bug.cgi?id=22049

[32] domcrypt: Summary ( ( 版)) https://dvcs.w3.org/hg/domcrypt/

[33] DRAFT Web Cryptography Working Group Charter ( ( 版)) http://www.w3.org/2011/11/webcryptography-charter.html

[46] Web Crypto API Community Group ( 版) https://www.w3.org/community/webcryptoapi/

[47] KoreaWebCryptoUseCase - W3C Wiki ( 版) http://www.w3.org/wiki/KoreaWebCryptoUseCase

[48] Web Crypto API — An Authentification of Data and People in SSL ( 版) http://html5.creation.net/webcrypto-api/

[45] Web Crypto API | Web Crypto API Community Group ( 版) https://www.w3.org/community/webcryptoapi/draft/

[34] domcrypt.org ( ( 版)) http://domcrypt.org/

[5] Web Crypto API — An Authentification of Data and People in SSL ( ( 版)) http://html5.creation.net/webcrypto-api/

[36] 657432 – Implement mozCipherAddressbook ( 版) https://bugzilla.mozilla.org/show_bug.cgi?id=657432

[37] Privacy/Features/mozCipherAddressbook - MozillaWiki ( 版) https://wiki.mozilla.org/Privacy/Features/mozCipherAddressbook

[6] Web Cryptography API ( ( 版)) http://www.w3.org/TR/2012/WD-WebCryptoAPI-20120913/

[7] Web Cryptography API Use Cases ( ( 版)) http://www.w3.org/TR/2013/NOTE-webcrypto-usecases-20130910/

[11] Web Cryptography API ( ( 版)) http://www.w3.org/TR/2013/WD-WebCryptoAPI-20130108/

[12] WebCrypto Key Discovery ( ( 版)) http://www.w3.org/TR/2013/WD-webcrypto-key-discovery-20130108/

[13] Web Cryptography API Use Cases ( ( 版)) http://www.w3.org/TR/2013/WD-webcrypto-usecases-20130108/

[14] Web Cryptography API ( ( 版)) http://www.w3.org/TR/2014/CR-WebCryptoAPI-20141211/

[10] Web Cryptography API ( 版) https://dvcs.w3.org/hg/webcrypto-api/raw-file/tip/spec/Overview.html

[20] W3C Web Cryptography Working Group ( ( 版)) http://www.w3.org/2012/webcrypto/

[15] W3C Web Cryptography Working Group ( 版) http://www.w3.org/2012/webcrypto/

The Web Cryptography Working Group will develop a Recommendation-track document that defines an API that lets developers implement secure application protocols on the level of Web applications, including message confidentiality and authentication services, by exposing trusted cryptographic primitives from the browser.

[21] Bug 62010 – Implement the DOMCrypt API ( ( 版)) https://bugs.webkit.org/show_bug.cgi?id=62010

[22] Web Cryptography Working Group Charter ( 版) http://www.w3.org/2011/11/webcryptography-charter.html

[17] WebCrypto Key Discovery ( 版) https://dvcs.w3.org/hg/webcrypto-keydiscovery/raw-file/tip/Overview.html

[18] WebCrypto High-level API ( 版) https://dvcs.w3.org/hg/webcrypto-highlevel/raw-file/tip/Overview.html

[19] daviddahl/web-crypto-ideas ( 版) https://github.com/daviddahl/web-crypto-ideas

[26] Privacy/Features/DOMCryptAPISpec/Latest - MozillaWiki ( 版) https://wiki.mozilla.org/Privacy/Features/DOMCryptAPISpec/Latest

window.cipher

The now deprecated proposed window property name for this API

window.mozCrypto

The temporary window property used to distinguish this new API from the current window.crypto property (used in the extension code and the current Gecko patches). The consensus so far is to add this API to the window.crypto property

[39] Web Cryptography API ( ( 版)) http://www.w3.org/TR/2014/WD-WebCryptoAPI-20140325/

[40] IRC logs: freenode / #whatwg / 20140425 ( ( 版)) http://krijnhoetmer.nl/irc-logs/whatwg/20140425#l-938

[41] Bug 25985 – WebCrypto should be inter-operable ( ( 版)) https://www.w3.org/Bugs/Public/show_bug.cgi?id=25985

[42] [WebCrypto.Next] Any ideas on how to proceed? (Anders Rundgren 著, 版) https://lists.w3.org/Archives/Public/public-web-security/2015Feb/0095.html

実装

[16] Chromewindow.cryptosubtle IDL属性getRandomValues メソッドを (素の HTTP 上でも) 実装しているようです。 cryptoCrypto オブジェクトのようですが、 window.Cryptoundefined です。

[38] FirefoxsubtlegetRandomValues のみ実装しているようです。 window.Crypto もあります。

[50] Netscape DevEdge ( 版) http://web.archive.org/web/20040611103012/http://devedge.netscape.com/library/manuals/2000/javascript/1.3/reference/window.html#1201963

Implemented in

JavaScript 1.2

Description

The crypto object is only available as a property of window; it provides access to methods which support Navigator's encryption features.

[51] Keygen and Client Certificates ( 版) https://w3ctag.github.io/client-certificates/

[52] WebCrypto Key Discovery ( 版) https://www.w3.org/TR/2016/NOTE-webcrypto-key-discovery-20160329/

[53] WebCrypto High-level API () https://dvcs.w3.org/hg/webcrypto-highlevel/raw-file/tip/Overview.html

[54] WebCrypto Key Discovery () https://www.w3.org/TR/webcrypto-key-discovery/

[55] PKI.js () https://pkijs.org/

PKIjs is a pure JavaScript library implementing the formats that are used in PKI applications (signing, encryption, certificate requests, OCSP and TSP requests/responses). It is built on WebCrypto (Web Cryptography API) and requires no plug-ins.

[56] Web Cryptography API () https://www.w3.org/TR/2016/PR-WebCryptoAPI-20161215/

[57] Web Cryptography API () https://www.w3.org/TR/2017/REC-WebCryptoAPI-20170126/

[58] Web Cryptography API () https://w3c.github.io/webcrypto/Overview.html

[59] Deprecations and Removals in Chrome 60  |  Web  |  Google Developers () https://developers.google.com/web/updates/2017/06/chrome-60-deprecations

[60] New WebKit Features in Safari 11 | WebKit () https://webkit.org/blog/7956/new-webkit-features-in-safari-11/

[61] Update on Web Cryptography | WebKit () https://webkit.org/blog/7790/update-on-web-cryptography/

[62] Looking for a new editor/decision-maker for the Web Crypto spec · Issue #249 · w3c/webcrypto () https://github.com/w3c/webcrypto/issues/249

[63] Web Crypto Streams, https://proposal-webcrypto-streams.deno.dev/