2019-08-22 14:49:30 +02:00
<?xml version="1.0" encoding="UTF-8" ?>
2022-03-16 23:01:02 +01:00
<class name= "CryptoKey" inherits= "Resource" version= "3.5" xmlns:xsi= "http://www.w3.org/2001/XMLSchema-instance" xsi:noNamespaceSchemaLocation= "../class.xsd" >
2019-08-22 14:49:30 +02:00
<brief_description >
2019-09-23 18:16:41 +02:00
A cryptographic key (RSA).
2019-08-22 14:49:30 +02:00
</brief_description>
<description >
2019-09-23 18:16:41 +02:00
The CryptoKey class represents a cryptographic key. Keys can be loaded and saved like any other [Resource].
2019-09-27 22:16:32 +02:00
They can be used to generate a self-signed [X509Certificate] via [method Crypto.generate_self_signed_certificate] and as private key in [method StreamPeerSSL.accept_stream] along with the appropriate certificate.
2019-08-22 14:49:30 +02:00
</description>
<tutorials >
</tutorials>
<methods >
2020-06-18 12:39:56 +02:00
<method name= "is_public_only" qualifiers= "const" >
2021-07-30 15:28:05 +02:00
<return type= "bool" />
2020-06-18 12:39:56 +02:00
<description >
Return [code]true[/code] if this CryptoKey only has the public part, and not the private one.
</description>
</method>
2019-08-22 14:49:30 +02:00
<method name= "load" >
2021-07-30 15:28:05 +02:00
<return type= "int" enum= "Error" />
<argument index= "0" name= "path" type= "String" />
<argument index= "1" name= "public_only" type= "bool" default= "false" />
2020-06-18 12:39:56 +02:00
<description >
Loads a key from [code]path[/code]. If [code]public_only[/code] is [code]true[/code], only the public key will be loaded.
2021-10-05 14:24:34 +02:00
[b]Note:[/b] [code]path[/code] should be a "*.pub" file if [code]public_only[/code] is [code]true[/code], a "*.key" file otherwise.
2020-06-18 12:39:56 +02:00
</description>
</method>
<method name= "load_from_string" >
2021-07-30 15:28:05 +02:00
<return type= "int" enum= "Error" />
<argument index= "0" name= "string_key" type= "String" />
<argument index= "1" name= "public_only" type= "bool" default= "false" />
2019-08-22 14:49:30 +02:00
<description >
2020-06-18 12:39:56 +02:00
Loads a key from the given [code]string[/code]. If [code]public_only[/code] is [code]true[/code], only the public key will be loaded.
2019-08-22 14:49:30 +02:00
</description>
</method>
<method name= "save" >
2021-07-30 15:28:05 +02:00
<return type= "int" enum= "Error" />
<argument index= "0" name= "path" type= "String" />
<argument index= "1" name= "public_only" type= "bool" default= "false" />
2020-06-18 12:39:56 +02:00
<description >
Saves a key to the given [code]path[/code]. If [code]public_only[/code] is [code]true[/code], only the public key will be saved.
2021-10-05 14:24:34 +02:00
[b]Note:[/b] [code]path[/code] should be a "*.pub" file if [code]public_only[/code] is [code]true[/code], a "*.key" file otherwise.
2020-06-18 12:39:56 +02:00
</description>
</method>
<method name= "save_to_string" >
2021-07-30 15:28:05 +02:00
<return type= "String" />
<argument index= "0" name= "public_only" type= "bool" default= "false" />
2019-08-22 14:49:30 +02:00
<description >
2020-06-18 12:39:56 +02:00
Returns a string containing the key in PEM format. If [code]public_only[/code] is [code]true[/code], only the public key will be included.
2019-08-22 14:49:30 +02:00
</description>
</method>
</methods>
<constants >
</constants>
</class>