SHA1とは? わかりやすく解説

sha1

(PHP 4 >= 4.3.0, PHP 5)
sha1 — 文字列の sha1 ハッシュを計算する

説明

string sha1 ( string str [, bool raw_output] )
» US Secure Hash Algorithm 1 を使用して str の sha1 ハッシュを計算し、 そのハッシュ値を返します。ハッシュは 40 文字の 16 進数です。 オプションの raw_outputTRUE が 指定された場合、sha1 ダイジェストは 20 バイト長のバイナリ形式で 返されます。
注意: オプションの raw_output パラメータは PHP 5.0.0 で追加され、デフォルトは FALSE です。
例 2284. sha1() の例
<?php
$str = 'apple';
                    
if (sha1($str) === 'd0be2dc421be4fcd0172e5afceea3970e2f3d940') {
   echo "Would you like a green or red apple?";
   exit;
}
?>


sha1_file()crc32() および md5() も参照ください。

SHA1 クラス

入力データSHA1 ハッシュ計算します

名前空間: System.Security.Cryptography
アセンブリ: mscorlib (mscorlib.dll 内)
構文構文

<ComVisibleAttribute(True)> _
Public MustInherit Class
 SHA1
    Inherits HashAlgorithm
[ComVisibleAttribute(true)] 
public abstract class SHA1 : HashAlgorithm
[ComVisibleAttribute(true)] 
public ref class SHA1 abstract : public
 HashAlgorithm
/** @attribute ComVisibleAttribute(true) */ 
public abstract class SHA1 extends HashAlgorithm
ComVisibleAttribute(true) 
public abstract class SHA1 extends
 HashAlgorithm
解説解説
使用例使用例

dataSHA1 ハッシュ計算しresult格納する例を次に示します。この例では、定義済み定数 DATA_SIZE があることを前提にしています。

Dim data(DATA_SIZE) As Byte
Dim result() As Byte
       
Dim sha As New SHA1CryptoServiceProvider()
' This is one implementation of the abstract class SHA1.
result = sha.ComputeHash(data)
byte[] data = new byte[DATA_SIZE];
byte[] result; 
 
SHA1 sha = new SHA1CryptoServiceProvider(); 
// This is one implementation of the abstract class SHA1.
result = sha.ComputeHash(data);
array<Byte>^ data = gcnew array<Byte>( DATA_SIZE );
array<Byte>^ result;

SHA1^ sha = gcnew SHA1CryptoServiceProvider;
// This is one implementation of the abstract class SHA1.
result = sha->ComputeHash( data );
ubyte data[] = new ubyte[data_Size];
ubyte result[];
SHA1 sha = new SHA1CryptoServiceProvider();

// This is one implementation of the abstract class SHA1.
result = sha.ComputeHash(data);
継承階層継承階層
System.Object
   System.Security.Cryptography.HashAlgorithm
    System.Security.Cryptography.SHA1
       System.Security.Cryptography.SHA1CryptoServiceProvider
       System.Security.Cryptography.SHA1Managed
スレッド セーフスレッド セーフ
この型の public static (Visual Basic では Shared) メンバはすべて、スレッド セーフです。インスタンス メンバ場合は、スレッド セーフであるとは限りません。
プラットフォームプラットフォーム
バージョン情報バージョン情報
参照参照

SHA1 コンストラクタ


SHA1 フィールド


プロテクト フィールドプロテクト フィールド

  名前 説明
プロテクト フィールド HashSizeValue  計算されハッシュ コードサイズビット単位表します。 ( HashAlgorithm から継承されます。)
プロテクト フィールド HashValue  計算されハッシュ コードの値を表します。 ( HashAlgorithm から継承されます。)
プロテクト フィールド State  ハッシュ計算の状態を表します。 ( HashAlgorithm から継承されます。)
参照参照

関連項目

SHA1 クラス
System.Security.Cryptography 名前空間

その他の技術情報

暗号サービス

SHA1 プロパティ


パブリック プロパティパブリック プロパティ

  名前 説明
パブリック プロパティ CanReuseTransform  現在の変換再利用できるかどうかを示す値を取得します。 ( HashAlgorithm から継承されます。)
パブリック プロパティ CanTransformMultipleBlocks  派生クラスオーバーライドされると、複数ブロック変換できるかどうかを示す値を取得します。 ( HashAlgorithm から継承されます。)
パブリック プロパティ Hash  計算されハッシュ コードの値を取得します。 ( HashAlgorithm から継承されます。)
パブリック プロパティ HashSize  計算されハッシュ コードサイズビット単位取得します。 ( HashAlgorithm から継承されます。)
パブリック プロパティ InputBlockSize  派生クラスオーバーライドされると、入力ブロック サイズ取得します。 ( HashAlgorithm から継承されます。)
パブリック プロパティ OutputBlockSize  派生クラスオーバーライドされると、出力ブロック サイズ取得します。 ( HashAlgorithm から継承されます。)
参照参照

関連項目

SHA1 クラス
System.Security.Cryptography 名前空間

その他の技術情報

暗号サービス

SHA1 メソッド


パブリック メソッドパブリック メソッド

( プロテクト メソッド参照)
  名前 説明
パブリック メソッド Clear  HashAlgorithm クラスによって使用されているすべてのリソース解放します。 ( HashAlgorithm から継承されます。)
パブリック メソッド ComputeHash  オーバーロードされます入力データハッシュ値計算します。 ( HashAlgorithm から継承されます。)
パブリック メソッド Create オーバーロードされます。 この抽象クラス特定の実装インスタンス化できるようにします。
パブリック メソッド Equals  オーバーロードされます2 つObject インスタンス等しかどうか判断します。 ( Object から継承されます。)
パブリック メソッド GetHashCode  特定の型のハッシュ関数として機能します。GetHashCode は、ハッシュ アルゴリズムや、ハッシュ テーブルのようなデータ構造での使用適してます。 ( Object から継承されます。)
パブリック メソッド GetType  現在のインスタンスType取得します。 ( Object から継承されます。)
パブリック メソッド Initialize  HashAlgorithm クラス実装初期化します。 ( HashAlgorithm から継承されます。)
パブリック メソッド ReferenceEquals  指定した複数Object インスタンス同一かどうか判断します。 ( Object から継承されます。)
パブリック メソッド ToString  現在の Object を表す String返します。 ( Object から継承されます。)
パブリック メソッド TransformBlock  入力バイト配列指定した領域ハッシュ値計算し結果ハッシュ値出力バイト配列指定した領域コピーします。 ( HashAlgorithm から継承されます。)
パブリック メソッド TransformFinalBlock  指定したバイト配列指定した領域ハッシュ値計算します。 ( HashAlgorithm から継承されます。)
プロテクト メソッドプロテクト メソッド
参照参照

関連項目

SHA1 クラス
System.Security.Cryptography 名前空間

その他の技術情報

暗号サービス

SHA1 メンバ

入力データの SHA1 ハッシュ計算します

SHA1 データ型公開されるメンバを以下の表に示します


プロテクト コンストラクタプロテクト コンストラクタ
プロテクト フィールドプロテクト フィールド
  名前 説明
プロテクト フィールド HashSizeValue  計算されハッシュ コードサイズビット単位表します。(HashAlgorithm から継承されます。)
プロテクト フィールド HashValue  計算されハッシュ コードの値を表します。(HashAlgorithm から継承されます。)
プロテクト フィールド State  ハッシュ計算の状態を表します。(HashAlgorithm から継承されます。)
パブリック プロパティパブリック プロパティ
  名前 説明
パブリック プロパティ CanReuseTransform  現在の変換再利用できるかどうかを示す値を取得します。(HashAlgorithm から継承されます。)
パブリック プロパティ CanTransformMultipleBlocks  派生クラスオーバーライドされると、複数ブロック変換できるかどうかを示す値を取得します。(HashAlgorithm から継承されます。)
パブリック プロパティ Hash  計算されハッシュ コードの値を取得します。(HashAlgorithm から継承されます。)
パブリック プロパティ HashSize  計算されハッシュ コードサイズビット単位取得します。(HashAlgorithm から継承されます。)
パブリック プロパティ InputBlockSize  派生クラスオーバーライドされると、入力ブロック サイズ取得します。(HashAlgorithm から継承されます。)
パブリック プロパティ OutputBlockSize  派生クラスオーバーライドされると、出力ブロック サイズ取得します。(HashAlgorithm から継承されます。)
パブリック メソッドパブリック メソッド
( プロテクト メソッド参照)
  名前 説明
パブリック メソッド Clear  HashAlgorithm クラスによって使用されているすべてのリソース解放します。 (HashAlgorithm から継承されます。)
パブリック メソッド ComputeHash  オーバーロードされます入力データハッシュ値計算します。 (HashAlgorithm から継承されます。)
パブリック メソッド Create オーバーロードされます。 この抽象クラス特定の実装インスタンス化できるようにします。
パブリック メソッド Equals  オーバーロードされます2 つObject インスタンス等しかどうか判断します。 (Object から継承されます。)
パブリック メソッド GetHashCode  特定の型のハッシュ関数として機能します。GetHashCode は、ハッシュ アルゴリズムや、ハッシュ テーブルのようなデータ構造での使用適してます。 (Object から継承されます。)
パブリック メソッド GetType  現在のインスタンスType取得します。 (Object から継承されます。)
パブリック メソッド Initialize  HashAlgorithm クラス実装初期化します。 (HashAlgorithm から継承されます。)
パブリック メソッド ReferenceEquals  指定した複数Object インスタンス同一かどうか判断します。 (Object から継承されます。)
パブリック メソッド ToString  現在の Object を表す String返します。 (Object から継承されます。)
パブリック メソッド TransformBlock  入力バイト配列指定した領域ハッシュ値計算し結果ハッシュ値出力バイト配列指定した領域コピーします。 (HashAlgorithm から継承されます。)
パブリック メソッド TransformFinalBlock  指定したバイト配列指定した領域ハッシュ値計算します。 (HashAlgorithm から継承されます。)
プロテクト メソッドプロテクト メソッド
参照参照

関連項目

SHA1 クラス
System.Security.Cryptography 名前空間

その他の技術情報

暗号サービス

SHA-1

出典: フリー百科事典『ウィキペディア(Wikipedia)』 (2022/12/20 02:30 UTC 版)

SHA-1(シャーワン[3][4])は、Secure Hash Algorithmシリーズの暗号学的ハッシュ関数で、SHAの最初のバージョンであるSHA-0の弱点を修正したものである。National Security Agency(NSA)によって設計され、National Institute of Standards and Technology(NIST)によってFederal Information Processing Standard(FIPS) PUB 180-4として標準化されている。NISTは2030年12月31日に仕様を廃止予定[5]


  1. ^ Marc Stevens. hashclash - Framework for MD5 & SHA-1 Differential Path Construction and Chosen-Prefix Collisions for MD5. https://code.google.com/archive/p/hashclash. 
  2. ^ ShAttered
  3. ^ シャーワン”. NTTPCコミュニケーションズ. 2017年9月30日閲覧。
  4. ^ SHA-1とは”. IT用語辞典 e-words. 2022年6月29日閲覧。
  5. ^ NIST Retires SHA-1 Cryptographic Algorithm | NIST
  6. ^ Bruce Schneier (2005年2月18日). “Schneier on Security: Cryptanalysis of SHA-1”. 2014年1月1日閲覧。
  7. ^ a b Secure Hashing”. NIST. 2014年1月1日閲覧。[1]
  8. ^ SHA1 Deprecation Policy”. Microsoft (2013年11月12日). 2014年1月1日閲覧。
  9. ^ Intent to Deprecate: SHA-1 certificates”. Google (2014年9月3日). 2014年9月4日閲覧。
  10. ^ Bug 942515 - stop accepting SHA-1-based SSL certificates with notBefore >= 2014-03-01 and notAfter >= 2017-01-01, or any SHA-1-based SSL certificates after 2017-01-01”. Mozilla. 2014年9月4日閲覧。
  11. ^ CA:Problematic Practices - MozillaWiki”. Mozilla. 2014年9月9日閲覧。
  12. ^ Phasing Out Certificates with SHA-1 based Signature Algorithms | Mozilla Security Blog”. Mozilla (2014年9月23日). 2014年9月24日閲覧。
  13. ^ 電子政府における調達のために参照すべき暗号のリスト(CRYPTREC暗号リスト)”. 総務省及び経済産業省. 2014年9月4日閲覧。
  14. ^ 政府機関の情報システムにおいて使用されている暗号アルゴリズムSHA-1及びRSA1024に係る移行指針”. 情報セキュリティ対策推進会議 (2012年10月26日). 2014年9月4日閲覧。
  15. ^ えきねっとの例
  16. ^ サーバ証明書の切り替えによるドコモ ケータイへの影響について2015年7月15日
  17. ^ auケータイをご利用のお客さまへ、サーバ証明書切り替えによる影響について
  18. ^ SoftBank 3G(携帯電話)をご利用のお客さまへ サーバ証明書切り替えによる影響のご案内2015年7月15日
  19. ^ NIST Retires SHA-1 Cryptographic Algorithm | NIST
  20. ^ NIST's March 2006 Policy on Hash Functions”. NIST (2006年3月15日). 2014年1月1日閲覧。
  21. ^ http://debugmo.de/?p=61 Debugmo.de "For verifying the hash (which is the only thing they verify in the signature), they have chosen to use a function (strncmp) which stops on the first nullbyte – with a positive result. Out of the 160 bits of the SHA1-hash, up to 152 bits are thrown away."
  22. ^ Niels Ferguson, Bruce Schneier, and Tadayoshi Kohno, Cryptography Engineering, John Wiley & Sons, 2010. ISBN 978-0-470-47424-2
  23. ^ Cryptology ePrint Archive
  24. ^ a b Schneier on Security: SHA-1 Broken
  25. ^ Schneier on Security: New Cryptanalytic Results Against SHA-1
  26. ^ Notes on the Wang et al. $2^{63}$ SHA-1 Differential Path
  27. ^ Christophe De Cannière, Christian Rechberger (2006-11-15). Finding SHA-1 Characteristics: General Results and Applications. http://www.springerlink.com/content/q42205u702p5604u/. 
  28. ^ IAIK Krypto Group – Description of SHA-1 Collision Search Project”. 2009年6月30日閲覧。
  29. ^ Collisions for 72-step and 73-step SHA-1: Improvements in the Method of Characteristics”. 2010年7月24日閲覧。
  30. ^ SHA-1 Collision Search Graz”. 2014年1月2日閲覧。
  31. ^ SHA-1 hash function under pressure – heise Security
  32. ^ Crypto 2006 Rump Schedule
  33. ^ Stéphane Manuel. Classification and Generation of Disturbance Vectors for Collision Attacks against SHA-1. http://eprint.iacr.org/2008/469.pdf 2011年5月19日閲覧。. 
  34. ^ Stéphane Manuel. Classification and Generation of Disturbance Vectors for Collision Attacks against SHA-1. http://www.springerlink.com/content/u320751102001580/ 2012年10月4日閲覧。.  the most efficient disturbance vector is the one first reported as Codeword2 by Jutla and Patthak
  35. ^ SHA-1 collisions now 2^52
  36. ^ International Association for Cryptologic Research
  37. ^ Cryptanalysis of MD5 & SHA-1
  38. ^ When Will We See Collisions for SHA-1?
  39. ^ HashClash - Framework for MD5 & SHA-1 Differential Path Construction and Chosen-Prefix Collisions for MD5
  40. ^ a b c The SHAppening: freestart collisions for SHA-1”. 2015年10月9日閲覧。
  41. ^ https://shattered.io/ 2017年2月26日閲覧。
  42. ^ a b Announcing the first SHA1 collision Google Security Blog、2017年2月23日(2017年2月26日閲覧)。
  43. ^ The end of SHA-1 on the Public Web Mozilla Security Blog、2017年2月23日(2017年2月26日閲覧)。
  44. ^ Differential Collisions in SHA-0
  45. ^ Freedom to Tinker » Blog Archive » Report from Crypto 2004
  46. ^ (中国語) Sdu.edu.cn, Shandong University
  47. ^ National Institute of Standards and Technology
  48. ^ SHS Validation List
  49. ^ http://www.faqs.org/rfcs/rfc3174.html
  50. ^ Locktyukhin, Max; Farrel, Kathy (2010-03-31), “Improving the Performance of the Secure Hash Algorithm (SHA-1)”, Intel Software Knowledge Base (Intel), http://software.intel.com/en-us/articles/improving-the-performance-of-the-secure-hash-algorithm-1/ 2014年1月1日閲覧。 
  51. ^ Crypto++ 5.6.0 Benchmarks”. 2014年1月1日閲覧。
  52. ^ AMD Opteron 8354 2.2 GHzプロセッサと64ビット版Linuxによる計測[51]
  53. ^ Announcing the first SHA1 collision”. 2017年2月23日閲覧。
  54. ^ The Sponge Functions Corner”. 2016年1月28日閲覧。
  55. ^ The Keccak sponge function family”. 2016年1月28日閲覧。



SHA-1

出典: フリー百科事典『ウィキペディア(Wikipedia)』 (2021/02/11 03:54 UTC 版)

Secure Hash Algorithm」の記事における「SHA-1」の解説

詳細は「SHA-1」を参照 SHA-0欠点修正した。SHA-1のハッシュ値長さは、SHA-0同じく160ビット2017年に、衝突攻撃成功実例報告された。

※この「SHA-1」の解説は、「Secure Hash Algorithm」の解説の一部です。
「SHA-1」を含む「Secure Hash Algorithm」の記事については、「Secure Hash Algorithm」の概要を参照ください。

ウィキペディア小見出し辞書の「SHA1」の項目はプログラムで機械的に意味や本文を生成しているため、不適切な項目が含まれていることもあります。ご了承くださいませ。 お問い合わせ



固有名詞の分類


英和和英テキスト翻訳>> Weblio翻訳
英語⇒日本語日本語⇒英語
  

辞書ショートカット

すべての辞書の索引

「SHA1」の関連用語

SHA1のお隣キーワード
検索ランキング

   

英語⇒日本語
日本語⇒英語
   



SHA1のページの著作権
Weblio 辞書 情報提供元は 参加元一覧 にて確認できます。

   
デジタル大辞泉デジタル大辞泉
(C)Shogakukan Inc.
株式会社 小学館
PHP Documentation GroupPHP Documentation Group
Copyright © 1997 - 2024 by the PHP Documentation Group.
日本マイクロソフト株式会社日本マイクロソフト株式会社
© 2024 Microsoft.All rights reserved.
ウィキペディアウィキペディア
All text is available under the terms of the GNU Free Documentation License.
この記事は、ウィキペディアのSHA-1 (改訂履歴)の記事を複製、再配布したものにあたり、GNU Free Documentation Licenseというライセンスの下で提供されています。 Weblio辞書に掲載されているウィキペディアの記事も、全てGNU Free Documentation Licenseの元に提供されております。
ウィキペディアウィキペディア
Text is available under GNU Free Documentation License (GFDL).
Weblio辞書に掲載されている「ウィキペディア小見出し辞書」の記事は、WikipediaのSecure Hash Algorithm (改訂履歴)の記事を複製、再配布したものにあたり、GNU Free Documentation Licenseというライセンスの下で提供されています。

©2024 GRAS Group, Inc.RSS