--- title: window.crypto slug: Web/API/crypto_property tags: - API - HTML DOM - Property - Reference - Window translation_of: Web/API/Window/crypto original_slug: Web/API/Window/crypto ---
{{APIRef}}

Window.crypto 読み取り専用プロパティは、グローバルオブジェクトに関連付けられた {{domxref("Crypto")}} オブジェクトを返します。このオブジェクトは、ウェブページが暗号に関連したサービスにアクセスできるようにします。 {{domxref("Window.crypto")}} プロパティ自体は読み取り専用ですが、そのメソッドすべて(加えて子オブジェクトのメソッドと {{domxref("SubtleCrypto")}} )は読み取り専用では有りません。故に polyfill による攻撃に対し脆弱です。

構文

var cryptoObj = window.crypto || window.msCrypto; // for IE 11

{{domxref("Window.crypto")}} プロパティを使用して getRandomValues() メソッドにアクセスする

JavaScript

genRandomNumbers = function getRandomNumbers() {
  var array = new Uint32Array(10);
  window.crypto.getRandomValues(array);

  var randText = document.getElementById("myRandText");
  randText.innerHTML = "The random numbers are: "
  for (var i = 0; i < array.length; i++) {
    randText.innerHTML += array[i] + " ";
  }
}

HTML

<p id="myRandText">The random numbers are: </p>
<button type="button" onClick='genRandomNumbers()'>Generate 10 random numbers</button>

実行結果

{{ EmbedLiveSample('Example') }}

仕様

仕様書 策定状況 備考
{{SpecName("Web Crypto API", "#dfn-GlobalCrypto", "Window.crypto")}} {{Spec2("Web Crypto API")}} 初期定義

ブラウザーの実装状況

{{Compat("api.Window.crypto")}}

関連情報