2012-04-24 10 views
0

IamはC言語でプログラミングします。私はTMK1 = 32byteの16進値TMK2 = 32byteの16進値のようなコンポーネントのようなTMK(Terminal master key)を与えられています。 これらの2つのKey値を使用してKeyチェック値を計算する必要があります。 私はこれを達成するためにDESアルゴリズムが使用されていることを知っていますが、完全な手順はわかりません。 これを行うためのサンプルプログラムを用意してください。キー値を使用してキーチェック値を計算する

それは好き試みはIAM:

をKV 1.Take:XXXX XXXX XXXX XXXX YYYY YYYY YYYY YYYY

2.Divideその各部分が64ビット長であり、左右の部分に: 左= XXXX XXXX XXXX XXXX 右= YYYY YYYY YYYY YYYY

3. 64ビットバッファをゼロで初期化します。このバッファResultを呼び出します。

4.DESを左に暗号化します。

5.DES復号化結果を右にします。左と

6.DES暗号結果

プラットフォーム:Linuxでは、C言語は

+0

古いANSI銀行基準、X9.9などを思い出させます。 –

+0

あなたは、使用されているアルゴリズムがわからないと言いますが、それについてはあまり説明していません。どのようにして有用な答えを得られるのでしょうか? –

+0

私の主な関心事は、そのTMKコンテンツをどのように分割し、上記のような連続した3DESアルゴリズムに使用するかです。 – john

答えて

0

私は今あなたにコードを与えることはできませんが、私はあなたが文字列(または配列または文字)としてKVを扱うことを示唆していますあなたは簡単に2つの部分に分けることができます。そんな感じ。

+0

KVは16進数値で与えられます...私はそれをASCIIに変換して使用しなければなりませんか、そのまま使うべきですか? – john

+0

@john:ASCIIに変換しないでください。バイナリデータなので、直接使用してください。 – indiv

関連する問題