<?xml version="1.0"?>
<feed xmlns="http://www.w3.org/2005/Atom" xml:lang="sv">
	<id>https://wiki.linux.se/index.php?action=history&amp;feed=atom&amp;title=openssl_csr_new%28%29</id>
	<title>openssl csr new() - Versionshistorik</title>
	<link rel="self" type="application/atom+xml" href="https://wiki.linux.se/index.php?action=history&amp;feed=atom&amp;title=openssl_csr_new%28%29"/>
	<link rel="alternate" type="text/html" href="https://wiki.linux.se/index.php?title=openssl_csr_new()&amp;action=history"/>
	<updated>2026-04-29T00:05:41Z</updated>
	<subtitle>Versionshistorik för denna sida på wikin</subtitle>
	<generator>MediaWiki 1.38.4</generator>
	<entry>
		<id>https://wiki.linux.se/index.php?title=openssl_csr_new()&amp;diff=5689&amp;oldid=prev</id>
		<title>Admin: Skapade sidan med &#039;== openssl_csr_new == &#039;&#039;&#039;(PHP 4 &gt;= 4.2.0, PHP 5, PHP 7, PHP 8)&#039;&#039;&#039;  === openssl_csr_new — Genererar en CSR ===  ==== Beskrivning ==== &lt;pre&gt; openssl_csr_new(array $distinguished_names, #[\SensitiveParameter] ?OpenSSLAsymmetricKey &amp;$private_key, ?array $options = null, ?array $extra_attributes = null): OpenSSLCertificateSigningRequest|bool &lt;/pre&gt;  Funktionen `openssl_csr_new()` genererar en ny Certificate Signing Request (CSR) baserat på informationen som ges i &#039;&#039;&#039;distin...&#039;</title>
		<link rel="alternate" type="text/html" href="https://wiki.linux.se/index.php?title=openssl_csr_new()&amp;diff=5689&amp;oldid=prev"/>
		<updated>2024-10-31T16:35:25Z</updated>

		<summary type="html">&lt;p&gt;Skapade sidan med &amp;#039;== openssl_csr_new == &amp;#039;&amp;#039;&amp;#039;(PHP 4 &amp;gt;= 4.2.0, PHP 5, PHP 7, PHP 8)&amp;#039;&amp;#039;&amp;#039;  === openssl_csr_new — Genererar en CSR ===  ==== Beskrivning ==== &amp;lt;pre&amp;gt; openssl_csr_new(array $distinguished_names, #[\SensitiveParameter] ?OpenSSLAsymmetricKey &amp;amp;$private_key, ?array $options = null, ?array $extra_attributes = null): OpenSSLCertificateSigningRequest|bool &amp;lt;/pre&amp;gt;  Funktionen `openssl_csr_new()` genererar en ny Certificate Signing Request (CSR) baserat på informationen som ges i &amp;#039;&amp;#039;&amp;#039;distin...&amp;#039;&lt;/p&gt;
&lt;p&gt;&lt;b&gt;Ny sida&lt;/b&gt;&lt;/p&gt;&lt;div&gt;== openssl_csr_new ==&lt;br /&gt;
&amp;#039;&amp;#039;&amp;#039;(PHP 4 &amp;gt;= 4.2.0, PHP 5, PHP 7, PHP 8)&amp;#039;&amp;#039;&amp;#039;&lt;br /&gt;
&lt;br /&gt;
=== openssl_csr_new — Genererar en CSR ===&lt;br /&gt;
&lt;br /&gt;
==== Beskrivning ====&lt;br /&gt;
&amp;lt;pre&amp;gt;&lt;br /&gt;
openssl_csr_new(array $distinguished_names, #[\SensitiveParameter] ?OpenSSLAsymmetricKey &amp;amp;$private_key, ?array $options = null, ?array $extra_attributes = null): OpenSSLCertificateSigningRequest|bool&lt;br /&gt;
&amp;lt;/pre&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Funktionen `openssl_csr_new()` genererar en ny Certificate Signing Request (CSR) baserat på informationen som ges i &amp;#039;&amp;#039;&amp;#039;distinguished_names&amp;#039;&amp;#039;&amp;#039;.&lt;br /&gt;
&lt;br /&gt;
&amp;#039;&amp;#039;&amp;#039;Notera:&amp;#039;&amp;#039;&amp;#039; För att denna funktion ska fungera korrekt måste en giltig openssl.cnf vara installerad. Se installationssektionen för mer information.&lt;br /&gt;
&lt;br /&gt;
==== Parametrar ====&lt;br /&gt;
&amp;#039;&amp;#039;&amp;#039;distinguished_names&amp;#039;&amp;#039;&amp;#039;  &lt;br /&gt;
De Distinguished Name- eller subject-fält som ska användas i certifikatet.&lt;br /&gt;
&lt;br /&gt;
&amp;#039;&amp;#039;&amp;#039;private_key&amp;#039;&amp;#039;&amp;#039;  &lt;br /&gt;
&amp;#039;&amp;#039;&amp;#039;private_key&amp;#039;&amp;#039;&amp;#039; bör vara satt till en privat nyckel som tidigare genererats med [[openssl_pkey_new()]] (eller erhållits från någon annan funktion i openssl_pkey-familjen), eller en null-variabel. Om dess värde är null genereras en ny privat nyckel baserat på de angivna inställningarna och tilldelas variabeln. Den motsvarande publika delen av nyckeln används för att signera CSR:n.&lt;br /&gt;
&lt;br /&gt;
&amp;#039;&amp;#039;&amp;#039;options&amp;#039;&amp;#039;&amp;#039;  &lt;br /&gt;
Som standard används informationen i din systems openssl.conf för att initiera förfrågan; du kan specificera en sektion från konfigurationsfilen genom att sätta nyckeln &amp;#039;&amp;#039;&amp;#039;config_section_section&amp;#039;&amp;#039;&amp;#039; i &amp;#039;&amp;#039;&amp;#039;options&amp;#039;&amp;#039;&amp;#039;. Du kan också specificera en alternativ OpenSSL-konfigurationsfil genom att sätta värdet för &amp;#039;&amp;#039;&amp;#039;config&amp;#039;&amp;#039;&amp;#039; till sökvägen för den fil du vill använda. Följande nycklar i &amp;#039;&amp;#039;&amp;#039;options&amp;#039;&amp;#039;&amp;#039; beter sig som deras motsvarigheter i openssl.conf, som listat nedan:&lt;br /&gt;
&lt;br /&gt;
{| class=&amp;quot;wikitable&amp;quot;&lt;br /&gt;
! options-nyckel !! Typ !! Motsvarande openssl.conf !! Beskrivning&lt;br /&gt;
|-&lt;br /&gt;
| digest_alg || string || default_md || Digestmetod eller signaturhash, vanligtvis en av openssl_get_md_methods()&lt;br /&gt;
|-&lt;br /&gt;
| x509_extensions || string || x509_extensions || Väljer vilka tillägg som ska användas vid skapandet av ett x509-certifikat&lt;br /&gt;
|-&lt;br /&gt;
| req_extensions || string || req_extensions || Väljer vilka tillägg som ska användas vid skapandet av en CSR&lt;br /&gt;
|-&lt;br /&gt;
| private_key_bits || int || default_bits || Anger antalet bitar som ska användas för att generera en privat nyckel&lt;br /&gt;
|-&lt;br /&gt;
| private_key_type || int || none || Anger typen av privat nyckel som ska skapas. Kan vara en av OPENSSL_KEYTYPE_DSA, OPENSSL_KEYTYPE_DH, OPENSSL_KEYTYPE_RSA eller OPENSSL_KEYTYPE_EC. Standardvärde är OPENSSL_KEYTYPE_RSA.&lt;br /&gt;
|-&lt;br /&gt;
| encrypt_key || bool || encrypt_key || Ska en exporterad nyckel (med lösenfras) krypteras?&lt;br /&gt;
|-&lt;br /&gt;
| encrypt_key_cipher || int || none || En av cipher-konstanterna.&lt;br /&gt;
|-&lt;br /&gt;
| curve_name || string || none || En av openssl_get_curve_names().&lt;br /&gt;
|-&lt;br /&gt;
| config || string || N/A || Sökväg till din alternativa openssl.conf-fil.&lt;br /&gt;
|}&lt;br /&gt;
&lt;br /&gt;
&amp;#039;&amp;#039;&amp;#039;extra_attributes&amp;#039;&amp;#039;&amp;#039;  &lt;br /&gt;
&amp;#039;&amp;#039;&amp;#039;extra_attributes&amp;#039;&amp;#039;&amp;#039; används för att specificera ytterligare konfigurationsalternativ för CSR:n. Både &amp;#039;&amp;#039;&amp;#039;distinguished_names&amp;#039;&amp;#039;&amp;#039; och &amp;#039;&amp;#039;&amp;#039;extra_attributes&amp;#039;&amp;#039;&amp;#039; är associativa arrayer, vars nycklar konverteras till OID:er och tillämpas på motsvarande del av förfrågan.&lt;br /&gt;
&lt;br /&gt;
==== Returvärden ====&lt;br /&gt;
Returnerar CSR vid framgång, true om CSR-skapandet lyckas men signeringen misslyckas, eller false vid misslyckande.&lt;br /&gt;
&lt;br /&gt;
==== Ändringslogg ====&lt;br /&gt;
{| class=&amp;quot;wikitable&amp;quot;&lt;br /&gt;
|-&lt;br /&gt;
! Version !! Beskrivning&lt;br /&gt;
|-&lt;br /&gt;
| 8.0.0 || Vid framgång returnerar denna funktion nu en instans av OpenSSLCertificateSigningRequest; tidigare returnerades en resurs av typen OpenSSL X.509 CSR.&lt;br /&gt;
|-&lt;br /&gt;
| 8.0.0 || &amp;#039;&amp;#039;&amp;#039;private_key&amp;#039;&amp;#039;&amp;#039; accepterar nu en instans av OpenSSLAsymmetricKey; tidigare accepterades en resurs av typen OpenSSL key.&lt;br /&gt;
|-&lt;br /&gt;
| 7.1.0 || &amp;#039;&amp;#039;&amp;#039;options&amp;#039;&amp;#039;&amp;#039; stöder nu också &amp;#039;&amp;#039;&amp;#039;curve_name&amp;#039;&amp;#039;&amp;#039;.&lt;br /&gt;
|}&lt;br /&gt;
&lt;br /&gt;
==== Exempel ====&lt;br /&gt;
Exempel #1 Skapar ett självsignerat certifikat&lt;br /&gt;
&lt;br /&gt;
&amp;lt;pre&amp;gt;&lt;br /&gt;
&amp;lt;?php&lt;br /&gt;
// För SSL-servercertifikat är commonName domännamnet som ska säkras&lt;br /&gt;
$dn = array(&lt;br /&gt;
    &amp;quot;countryName&amp;quot; =&amp;gt; &amp;quot;GB&amp;quot;,&lt;br /&gt;
    &amp;quot;stateOrProvinceName&amp;quot; =&amp;gt; &amp;quot;Somerset&amp;quot;,&lt;br /&gt;
    &amp;quot;localityName&amp;quot; =&amp;gt; &amp;quot;Glastonbury&amp;quot;,&lt;br /&gt;
    &amp;quot;organizationName&amp;quot; =&amp;gt; &amp;quot;The Brain Room Limited&amp;quot;,&lt;br /&gt;
    &amp;quot;organizationalUnitName&amp;quot; =&amp;gt; &amp;quot;PHP Documentation Team&amp;quot;,&lt;br /&gt;
    &amp;quot;commonName&amp;quot; =&amp;gt; &amp;quot;Wez Furlong&amp;quot;,&lt;br /&gt;
    &amp;quot;emailAddress&amp;quot; =&amp;gt; &amp;quot;wez@example.com&amp;quot;&lt;br /&gt;
);&lt;br /&gt;
&lt;br /&gt;
// Generera ett nytt privat (och publikt) nyckelpar&lt;br /&gt;
$privkey = openssl_pkey_new(array(&lt;br /&gt;
    &amp;quot;private_key_bits&amp;quot; =&amp;gt; 2048,&lt;br /&gt;
    &amp;quot;private_key_type&amp;quot; =&amp;gt; OPENSSL_KEYTYPE_RSA,&lt;br /&gt;
));&lt;br /&gt;
&lt;br /&gt;
// Generera en certificate signing request&lt;br /&gt;
$csr = openssl_csr_new($dn, $privkey, array(&amp;#039;digest_alg&amp;#039; =&amp;gt; &amp;#039;sha256&amp;#039;));&lt;br /&gt;
&lt;br /&gt;
// Generera ett självsignerat certifikat, giltigt i 365 dagar&lt;br /&gt;
$x509 = openssl_csr_sign($csr, null, $privkey, $days=365, array(&amp;#039;digest_alg&amp;#039; =&amp;gt; &amp;#039;sha256&amp;#039;));&lt;br /&gt;
&lt;br /&gt;
// Spara din privata nyckel, CSR och självsignerade certifikat för framtida användning&lt;br /&gt;
openssl_csr_export($csr, $csrout) and var_dump($csrout);&lt;br /&gt;
openssl_x509_export($x509, $certout) and var_dump($certout);&lt;br /&gt;
openssl_pkey_export($privkey, $pkeyout, &amp;quot;mypassword&amp;quot;) and var_dump($pkeyout);&lt;br /&gt;
&lt;br /&gt;
// Visa eventuella fel som uppstod&lt;br /&gt;
while (($e = openssl_error_string()) !== false) {&lt;br /&gt;
    echo $e . &amp;quot;\n&amp;quot;;&lt;br /&gt;
}&lt;br /&gt;
?&amp;gt;&lt;br /&gt;
&amp;lt;/pre&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Exempel #2 Skapar ett självsignerat ECC-certifikat (från och med PHP 7.1.0)&lt;br /&gt;
&lt;br /&gt;
&amp;lt;pre&amp;gt;&lt;br /&gt;
&amp;lt;?php&lt;br /&gt;
$subject = array(&lt;br /&gt;
    &amp;quot;commonName&amp;quot; =&amp;gt; &amp;quot;docs.php.net&amp;quot;,&lt;br /&gt;
);&lt;br /&gt;
&lt;br /&gt;
// Generera ett nytt privat (och publikt) nyckelpar&lt;br /&gt;
$private_key = openssl_pkey_new(array(&lt;br /&gt;
    &amp;quot;private_key_type&amp;quot; =&amp;gt; OPENSSL_KEYTYPE_EC,&lt;br /&gt;
    &amp;quot;curve_name&amp;quot; =&amp;gt; &amp;#039;prime256v1&amp;#039;,&lt;br /&gt;
));&lt;br /&gt;
&lt;br /&gt;
// Generera en certificate signing request&lt;br /&gt;
$csr = openssl_csr_new($subject, $private_key, array(&amp;#039;digest_alg&amp;#039; =&amp;gt; &amp;#039;sha384&amp;#039;));&lt;br /&gt;
&lt;br /&gt;
// Generera ett självsignerat EC-certifikat&lt;br /&gt;
$x509 = openssl_csr_sign($csr, null, $private_key, $days=365, array(&amp;#039;digest_alg&amp;#039; =&amp;gt; &amp;#039;sha384&amp;#039;));&lt;br /&gt;
openssl_x509_export_to_file($x509, &amp;#039;ecc-cert.pem&amp;#039;);&lt;br /&gt;
openssl_pkey_export_to_file($private_key, &amp;#039;ecc-private.key&amp;#039;);&lt;br /&gt;
?&amp;gt;&lt;br /&gt;
&amp;lt;/pre&amp;gt;&lt;br /&gt;
&lt;br /&gt;
==== Se även ====&lt;br /&gt;
* [[openssl_csr_sign()]] - Signerar en CSR med ett annat certifikat (eller sig själv) och genererar ett certifikat&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
= Sidslut =&lt;br /&gt;
&lt;br /&gt;
Orginalhemsidan på Engelska :https://www.php.net/manual/en/function.openssl-csr-new.php&lt;br /&gt;
[[PHP]]&lt;br /&gt;
[[Funktioner]]&lt;br /&gt;
[[Funktionsreferens]]&lt;br /&gt;
[[OpenSSL-funktioner]]&lt;br /&gt;
&amp;lt;HR&amp;gt;&lt;br /&gt;
Det här är en maskinöversättning av PHP-manualen till svenska. Om du hittar fel är vi tacksamma om du rapporterar dem via formuläret som finns på &lt;br /&gt;
https://www.linux.se/kontaka-linux-se/&lt;br /&gt;
&amp;lt;BR&amp;gt;&amp;lt;BR&amp;gt;Tack till [https://datorhjalp.se Datorhjälp] som har  sponsrat [https://www.linux.se Linux.se] med webserver.&lt;br /&gt;
&lt;br /&gt;
[[Kategori:Php]]&lt;br /&gt;
[[Kategori:Kryptografi-extensioner]]&lt;/div&gt;</summary>
		<author><name>Admin</name></author>
	</entry>
</feed>