ファイルの暗号化とセキュリティメカニズム

]どのような暗号化と復号化である
    ので、暗号化された情報への不正ユーザアクセスさえあれば、暗号文プロセスに平文を変換することで、特殊なアルゴリズムが元の情報データを変更するために使用される復号化処理が、私は知らない:暗号まだ情報の内容を理解することはできません。
    復号化は:翻訳された平文に対応する暗号アルゴリズムを用いて、平文プロセスに暗号文の正当なユーザを暗号文に変換することです。
[一般的な暗号化アルゴリズムとプロトコル]

対称暗号化:同一の鍵は、この暗号化方式は、対称暗号化と呼ばれ、情報を暗号化および復号化を同時に使用することができ、
    共通の対称暗号化アルゴリズム:DES(56)、3DES、 AES(128,192,256,384,512 )、フグ、Twofishは、IDEA、 RC6、CAST5 など、
    公開鍵暗号化:非対称暗号化と呼ばれる暗号化方式は、一対の対応する固有鍵(すなわち、公開鍵と秘密鍵)です。
    一般的に使用される公開鍵暗号アルゴリズム:RSA、DSA、EIGamalなど;
    一方向暗号化:暗号化方式は、非可逆、解読不能であり、
    従来の公開鍵暗号化アルゴリズム:MD5、SHA1、SHA256、SHA384 、SHA512 など;
    認証プロトコル:
        プロトコルIKE(インターネット鍵交換):仮想プライベートネットワークVPNネットワークの安全性を確保するために使用されるか、リモートホストと通信し、
        SSL(セキュアソケットレイヤ):セキュアな通信およびネットワークデータの整合性を提供することセキュアなプロトコル。
        TLS(トランスポート層セキュリティ):SSLは、2つの通信アプリケーション間のプライバシーとデータの整合性を提供するために、開発にモデル化されています。

[暗号化および復号化処理]

opensslコマンド・ツールの使用[シンプル]
    OpenSSLは、強力なセキュアソケットが暗号化ライブラリは、主要な暗号化アルゴリズム、一般的に使用される鍵と証明書の管理とSSLプロトコルのカプセル化が含まれる層であり、テストや他のアプリケーションのための富を提供します目的。
    1.バージョン情報opensslのを確認してください:
opensslのバージョン
[ルート@ CentOS6〜]#のopensslのバージョン
のOpenSSL 1.0.1e-2013年2月11日#は、バージョン情報をFIPS、最初に私たちの次のパッチやバージョンのアップグレードが表示されます;
    2、ファイルを対称暗号化:
暗号化:opensslのENC -des3 -a -塩-in /パス/ / somefileという-out /パス/に/ somecipherfileから
解読:opensslのENC -d -des3 -a -塩-in /パス/から/ somecipherfile - OUT /パス/に/ somefileという
A -塩-INを/ tmp / fstabのチェックアウト/tmp/fstab.sc - CentOS6 TMP]#OpenSSLのENC-DES3 @ 123456789101112131415161718192021222324252627ルート 
(あなたは自分のニーズに応じて選択することができます)暗号化アルゴリズム:#-des3- ;#
-a:暗号化されたデータBASE64符号化、または復号化の前に、最初のデータBASE64のデコード。
# -塩:塩、これは素晴らしいオプション、塩であり、同じ平文は異なる暗号文を得ることができます。デフォルトでは、塩の値はに含まれています
#-Generatedは、明示的に塩の値を指定するには、-Sオプションを使用することができます。
#-in:暗号化することを指定したファイル;
#-out:ファイルが暗号化出力を指定します。
EDE3-DES-CBC暗号化パスワードを入力します。#は、暗号化パスワードを入力するようにユーザに要求する;
確認- EDE3-DES-CBC暗号化パスワードを入力:パスワード#を確認;
[CentOS6 @ルートTMP]以下は、暗号文を生成したCATの/tmp/fstab.scが、それはそれを理解することができなかったされていないされて##〜
U2FsdGVkX188aCeQ1I9XJ4wbVbQtjOUWE3kA7z9qEKwthOgV7hwYoASba6F + 24rG
9Icl + 4BXyZ1vw + mLcpEaAQotxCpLZB7sYMTpd71jpmUEJkDTYRsP4uLwlFnMPA1G
#----少し-
7N9JdTKhByxLwOJaBZxQMFCRoyF8ri2HGE / 6tlxuq31RniwOUxcOZ / eux3iXDf2J
xFafl6AbzQgX1OztM 454ワット+ ==
[@ CentOS6ルートTMP] -D- DES3-ENC#のOpenSSL -塩-IN /tmp/fstab.scアウト-a / TMP / fstab1#-d:解読;
DES-ede3-を入力してくださいCBC復号化パスワード:#が使用する暗号化パスワードを入力して、あなたが解読され、正しい入力できます。
[ルート@ CentOS6 TMP] ## CATのfstab1解読アウト!

の/ etc / fstabに

月3月16日午前13時43分08秒2015年アナコンダによって作成されました

アクセス可能なファイルシステムは、参照することにより、「/ DEV /ディスク」の下で維持されています

、manページのfstab(5)を参照してくださいfindfs(8)、マウント(8)および/または詳細は(8)BLKID

/ dev /マッパー/ vg_centos6-lv_root / ext4のデフォルト1 1
# -王朝-
    ファイルの3ウェイの暗号化:
      OpenSSLのDGST [ - MD5 | -sha1] [-out /パス/に/ファイル名] /パス/から/ somefileという
[@ CentOS6ルートTMP]#OpenSSLのDGST - MD5、-out出力指定しない一方向の暗号化アルゴリズムを使用して、/ tmpに/ fstabの#MD5
#ファイル、デスクトップにデフォルトの出力を、
MD5(は/ tmp / fstabの)= 1dc8426edc4278081c898bdf9806682c
[ルート@ CentOS6 TMP]#md5sumのを/ tmp / fstabの# md5sumのツールを使用してファイルの暗号化、
1dc8426edc4278081c898bdf9806682cを/ tmp / fstabの
#あなたが長いアルゴリズム結果の出力が同じであると同様に、同じ方法でファイルを暗号化するために使用するどのようなツールに関係なく見つけることができます。
    図4に示すように、ユーザのパスワードのハッシュ:
      OpenSSLのpasswdの-1 [SALTを-塩]
          -1:MD5を使用してハッシュアルゴリズムを示し、
          SALTを-塩:塩は、文字列として入力され、
[@ CentOS6ルートTMP] -1#のOpenSSLのpasswdハッシュパスワードへ#使用MD5;
パスワード:#パスワードのハッシュを入力し、
確認-パスワード:入力を確認する#;
1 1 #hash /のMgYuAGde $ OHKciTF3gV9YZKMZUPyW結果;。
[@ CentOS6ルートTMP]#AAのOpenSSLのpasswd -1 -塩
パスワード: 
1 1 AA $ 9dcbvI.WtNPFK0cdGuO / W0
    5は、乱数生成:
      OpenSSLのRAND -base64を| -ヘキサNUM
      -base64 | -ヘキサ:base64ではランダムな文字列又は六角表示形式コードされる;
      NUM:NUM指定されたバイトの指定された長さを生成しますランダムな文字、
[@ CentOS6ルートTMP] ## OpenSSLのRANDの-hex 5は、ランダムに生成した乱数5bytesと表示base64エンコーディングを表し;
c0a6f4c166
[@ CentOS6ルートTMP] ## OpenSSLのRAND -base64 5ランダムに生成されたランダム5bytesを表します。コード番号、及び表示ヘクス;
McpaNQI =

:6、秘密鍵生成
      - ;(/のKeyFile NUMBEROFBITSへのアウト/パス/ OpenSSLのgenrsaのumask 077)
      ()コマンドはサブシェル内で実行される表し、現在のシェルには影響を与えません;:(コマンド)
        NUMBEROFBITS:キーの長さを(単位'ビット);
[@ CentOS6ルートTMP]#(umaskを077;のOpenSSL genrsa -アウト/ TMP /キー32)
RSA秘密鍵の生成、32'は、ロングモジュラスビット
++++++++++++++を。 +++++++++++++
。+++++++++++++++++++++++++++
Eは、65537(0x10001)IS
[ルート@ CentOS6 TMP]#猫の/ tmp /キー#が生成されたキーファイルを閲覧;
----- ----- BEGIN RSA PRIVATE KEY
MCwCAQACBQCyIttNAgMBAAECBGc3UKUCAwDsewIDAMDXAgMAwQ0CAkWhAgI /オグを==
----- ----- END RSA PRIVATE KEY
    7.抽出公開鍵:
      /アウトprivate_key_file -pubout /パスから/ / Pub_key_fileにOpenSSLのRSA -IN /パス/ 
[ルート@ CentOS6〜]#opensslの #の-pubout RSA -inを/ tmp /キーファイルへの出力は、画面に公開鍵出力を直接指定されていない、
RSAキーを書く
----- ----- BEGIN PUBLIC KEY
MCAwDQYJKoZIhvcNAQEBBQADDwAwDAIFALIi200CAwEAAQ = =
----- ----- END公開鍵
[CentOS6ルート@〜]#男OpenSSLのRSA
[CentOS6ルート@〜]#OpenSSLのRSA -INを/ tmp /チェックアウト-puboutキーを/ tmp /抽出だけでなくkey_pub#出力ファイルへの鍵、
RSAキーの書き込み
[CentOS6ルート@〜]#のCATを/ tmp / key_pub
----- ----- PUBLIC KEY BEGIN
MCAwDQYJKoZIhvcNAQEBBQADDwAwDAIFALIi200CAwEAAQを==
----- ----- END PUBLIC KEYを

公開された52元の記事 ウォンの賞賛1 ビュー1700

おすすめ

転載: blog.csdn.net/wx25051/article/details/102983800