PHP Fehler/Bug

Status
Für weitere Antworten geschlossen.

Harry_89

Benutzer
Mitglied seit
07. Mrz 2010
Beiträge
254
Punkte für Reaktionen
0
Punkte
0
Hallo,

heute ist mir etwas komisch ausgefallen.

Ich habe folgenden Code (Vereinfacht)

PHP:
//Daten
		$_POST['data']=array('Bit'=>'1024');		
		$daten=$_POST['data'];
		 
		//Key Config
        $config_key=array(
			'digest_alg'=>'aes256',
            'private_key_bits'=>(int)$daten['Bit']);

		//Key erzeugen		 
		$res = openssl_pkey_new($config_key);		
		$test2=openssl_pkey_get_details ($res);
		var_dump(sha1($test2['key']));

		//DN
		$dn = array(
			"countryName" => "US",
			"stateOrProvinceName" => "Colorado",
			"organizationName" => "yPass.net",
			"organizationalUnitName" => "yPass.net",
			"commonName" => "yPass.net Root Certificate"
		);
		
		//Req
		$req_csr = openssl_csr_new($dn, $req_key);				
		openssl_csr_export ($req_csr, $out1);
		
		$test3=openssl_csr_get_public_key ($req_csr);
		$test3=openssl_pkey_get_details ($test3);
		var_dump(sha1($test3['key']));
		
		//CRT
		$req_cert = openssl_csr_sign($req_csr, NULL, $req_key, 365);
		openssl_x509_export ( $req_cert ,$out);
		$test=openssl_pkey_get_public ( $out);

		$test1=openssl_pkey_get_details ($test);

		var_dump(sha1($test1['key']));

Als output erhalte ich 3 Strings.
2 davon sind identisch, 1 ist anders.
Sie müssten aber alle gleich sein.

Jetzt habe ich folgendes herausgefunden.
Wenn ich die Variable $res umbenenne in $req_key, stimmen alle 3 Strings überein.

PHP:
//Daten
		$_POST['data']=array('Bit'=>'1024');		
		$daten=$_POST['data'];
		 
		//Key Config
        $config_key=array(
			'digest_alg'=>'aes256',
            'private_key_bits'=>(int)$daten['Bit']);

		//Key erzeugen		 
		$req_key = openssl_pkey_new($config_key);		
		$test2=openssl_pkey_get_details ($req_key);
		var_dump(sha1($test2['key']));

		//DN
		$dn = array(
			"countryName" => "US",
			"stateOrProvinceName" => "Colorado",
			"organizationName" => "yPass.net",
			"organizationalUnitName" => "yPass.net",
			"commonName" => "yPass.net Root Certificate"
		);
		
		//Req
		$req_csr = openssl_csr_new($dn, $req_key);				
		openssl_csr_export ($req_csr, $out1);
		
		$test3=openssl_csr_get_public_key ($req_csr);
		$test3=openssl_pkey_get_details ($test3);
		var_dump(sha1($test3['key']));
		
		//CRT
		$req_cert = openssl_csr_sign($req_csr, NULL, $req_key, 365);
		openssl_x509_export ( $req_cert ,$out);
		$test=openssl_pkey_get_public ( $out);

		$test1=openssl_pkey_get_details ($test);

		var_dump(sha1($test1['key']));

Ergebnis: Alle 3 sind gleich.

Kann das jemand bestätigen?
Das muss doch ein Bug sein oder?
 

Harry_89

Benutzer
Mitglied seit
07. Mrz 2010
Beiträge
254
Punkte für Reaktionen
0
Punkte
0
Ich antworte mir mal eben selbst.
Ich hab vor lauter Bäumen den Wald nicht mehr gesehen und vergessen 2 andere Variablen mit zu ziehen....

Ich schäme mich so in den Boden... :rolleyes:

Ist erledigt.
 

heavy

Benutzer
Mitglied seit
13. Mai 2012
Beiträge
3.784
Punkte für Reaktionen
166
Punkte
129
Ist doch toll dass du das Problem selber gefunden hast, und danke dass du uns die Lösung verraten hast. ;)
 
Status
Für weitere Antworten geschlossen.
 

Kaffeautomat

Wenn du das Forum hilfreich findest oder uns unterstützen möchtest, dann gib uns doch einfach einen Kaffee aus.

Als Dankeschön schalten wir deinen Account werbefrei.

:coffee:

Hier gehts zum Kaffeeautomat 

 
 
  AdBlocker gefunden!

Du bist nicht hier, um Support für Adblocker zu erhalten. Dein Adblocker funktioniert bereits ;-)

Klar machen Adblocker einen guten Job, aber sie blockieren auch nützliche Funktionen.

Das Forum wird mit hohem technischen, zeitlichen und finanziellen Aufwand kostenfrei zur Verfügung gestellt. Wir zeigen keine offensive Werbung und bemühen uns um eine dezente Integration.

Bitte unterstütze dieses Forum, in dem du deinen Adblocker für diese Seite deaktivierst.

Du kannst uns auch über unseren Kaffeautomat einen Kaffe ausgeben oder ein PUR Abo abschließen und das Forum so werbefrei nutzen.

Vielen Dank für Deine Unterstützung!