2017-01-24 19 views
-2

laravelでsha1を使用して文字列をハッシュしたい。文字列が何であっても、それらはすべて同じハッシュを返しています。私はそれがなぜそうであるか、何が間違っているのかを知る必要があります。私のコードの下を参照してください:LaravelでSHA 1ハッシュを使用する

$lice = $serial->sname.$serial->company.$serial->effDate.$serial->ltype; 
     //$serial->sname is MTS; 
     //$serial->company is Godowns Technology; 
     //$serial->effDate is 2017-01-24; 
     //$serial->ltype is Trial 

     $lice2= sha1($lice); 
     $lice3 = chunk_split($lice2,5,'-'); 
     $lice4 =strtoupper($lice3); 
    based on the information above, the $lice4 is always return: 
DA39A-3EE5E-6B4B0-D3255-BFEF9-56018-90AFD-80709 

してください、私は私がやった、この

+0

チャレンジする最初の仮定は、 '$ lice'が正しく設定されていることです。ハッシュ結果が常に同じ場合、圧倒的に最も可能性の高いシナリオは、ハッシュされる値が常に同じであるということです。 – patricus

+2

これは、空の文字列のsha1-hashです。 – Dilaz

+0

@Dilaz:変数がフェッチされないという意味ですか?その理由は、空の文字列 – Dave

答えて

0

すべてにassitanceを必要とする私のvaribalesがフォームからフェッチし、それらを適切に標的にされたことを確認するためでした。したがって、これが完了したら、私は連結して正しいハッシュを得ることができました。

$lice = $request->sname.$request->company.$request->effDate; 
     //$lice = $serial->sname; 
     $lice2= sha1($lice); 
     $lice3 = chunk_split($lice2,5,'-'); 
     $lice4 =strtoupper($lice3); 

     Serial::create([ 
     'sname' => $request->sname, 
     'company' => $request->company, 
     'effDate' => $request->effDate, 
     'ltype' => $request->ltype 
     ]); 
関連する問題