AppendSignedCertificate (Stringlist function): Difference between revisions

From m204wiki
Jump to navigation Jump to search
m (→‎See also: add template for SL crypto methods)
m (SHA256 the new default)
Line 33: Line 33:


<tr><th><var>SignatureAlgorithm</var></th>
<tr><th><var>SignatureAlgorithm</var></th>
<td>This optional, [[Notation conventions for methods#Named parameters|name required]], argument is a <var>[[DigestAlgorithm enumeration|DigestAlgorithm]]</var> enumeration value.  Valid options are: <var>MD5</var>, <var>SHA1</var>, <var>SHA256</var>.
<td>This optional, [[Notation conventions for methods#Named parameters|name required]], argument is a <var>[[DigestAlgorithm enumeration|DigestAlgorithm]]</var> enumeration value.  Valid options are: <var>MD5</var>, <var>SHA1</var>, <var>SHA256</var>. The default value is <var>SHA256</var> as of Model 204 7.7 (and zap maintenance for versions 7.6 and 7.5).
<p class="note"><b>Note:</b> Although supported, most modern browsers are deprecating <var>SHA1</var>. <var>SHA256</var> is the Janus security default as of Model&nbsp;204 version 7.5.</p></td></tr>
<p class="note"><b>Note:</b> Although supported and formerly the default, most modern browsers are deprecating <var>SHA1</var>.</p></td></tr>
</table>
</table>



Revision as of 16:41, 30 March 2016

Add base64 encoded signed certificate to a Stringlist (Stringlist class)

[Requires Janus Network Security]

This callable method signs an X.509 certificate request and adds the lines of the signed certificate to the end of a Stringlist.

Syntax

[%rc =] sl:AppendSignedCertificate( [PrivateKey=] string, [Request=] string, - [[Signer=] string], - [[StartDate=] string], - [[EndDate=] string], - [[SerialNumber=] number], - [SignatureAlgorithm= digestAlgorithm])

Syntax terms

%rc An, optional, numeric variable that is set to zero if the function is a success. The possible return codes are described below in Return codes.
sl A Stringlist object.
PrivateKey This name allowed argument is a Stringlist that contains the private key to be used for signing.
Request This name allowed argument is a Stringlist that contains the base-64 encoded X.509 certificate request.
Signer This optional, name allowed, argument is a Stringlist that contains the base-64 encoded CA (certifying authority) X.509 certificate. If not specified, the Request Stringlist is used: that is, the certificate will be self-signed.
StartDate This optional, name allowed, argument is a string that contains the Start date for the signed certificate (in YYMMDDHHMISS format). The default is today's date.
EndDate This optional, name allowed, argument is a string that contains the End date for the signed certificate (in YYMMDDHHMISS format). The default is 24 hours from StartDate.
SerialNumber This optional, name allowed, argument is a numeric value that is the Serial number for the signed certificate. The default is a number guaranteed to increase by 1 for every call and guaranteed to increase from run to run, unless there is an extreme amount of signing occurrences.
SignatureAlgorithm This optional, name required, argument is a DigestAlgorithm enumeration value. Valid options are: MD5, SHA1, SHA256. The default value is SHA256 as of Model 204 7.7 (and zap maintenance for versions 7.6 and 7.5).

Note: Although supported and formerly the default, most modern browsers are deprecating SHA1.

Return codes

0 All is well.
3 Out of CCATEMP.
5 Stringlist identifier missing.
6 Invalid Stringlist identifier.
7 Insufficient storage.
10 Private key Stringlist identifier missing.
11 Invalid private key Stringlist identifier.
12 Invalid private key Stringlist data (not correctly base-64 encoded).
13 Certificate request Stringlist identifier missing.
14 Invalid certificate request Stringlist identifier.
15 Invalid certificate request.
16 Invalid CA certificate Stringlist identifier.
17 Invalid CA certificate.
18 Invalid start date.
19 Invalid end date.
20 Invalid serial number.
21 Private key does not match signer public key.

Examples

See also

Stringlist methods:

String methods:

System methods:

Socket methods: