---
title: llarp::layers::flow::FlowIdentityPrivateKeys
summary: private keys used at the flow layer that are persistable. 

---

# llarp::layers::flow::FlowIdentityPrivateKeys



private keys used at the flow layer that are persistable.  [More...](#detailed-description)


`#include <flow_identity.hpp>`

## Public Functions

|                | Name           |
| -------------- | -------------- |
| [FlowIdentityPrivateKeys](Classes/structllarp_1_1layers_1_1flow_1_1FlowIdentityPrivateKeys.md) | **[keygen](Classes/structllarp_1_1layers_1_1flow_1_1FlowIdentityPrivateKeys.md#function-keygen)**()<br>generate a new private key bundle for the flow layer.  |
| const [FlowAddr](Classes/classllarp_1_1layers_1_1flow_1_1FlowAddr.md) & | **[public_addr](Classes/structllarp_1_1layers_1_1flow_1_1FlowIdentityPrivateKeys.md#function-public-addr)**() const<br>get the public .loki or .snode address  |
| const [dht::Key_t](Classes/structllarp_1_1dht_1_1Key__t.md) & | **[keyspace_location](Classes/structllarp_1_1layers_1_1flow_1_1FlowIdentityPrivateKeys.md#function-keyspace-location)**() const<br>get the blinded dht keyspace location  |

## Public Attributes

|                | Name           |
| -------------- | -------------- |
| [PQKeyPair](Classes/structllarp_1_1AlignedBuffer.md) | **[sntrup](Classes/structllarp_1_1layers_1_1flow_1_1FlowIdentityPrivateKeys.md#variable-sntrup)**  |
| [SecretKey](Classes/structllarp_1_1SecretKey.md) | **[identity](Classes/structllarp_1_1layers_1_1flow_1_1FlowIdentityPrivateKeys.md#variable-identity)**  |
| [SecretKey](Classes/structllarp_1_1SecretKey.md) | **[encryption](Classes/structllarp_1_1layers_1_1flow_1_1FlowIdentityPrivateKeys.md#variable-encryption)**  |
| [PrivateKey](Classes/structllarp_1_1PrivateKey.md) | **[derivedKey](Classes/structllarp_1_1layers_1_1flow_1_1FlowIdentityPrivateKeys.md#variable-derivedkey)**  |

## Detailed Description

```cpp
struct llarp::layers::flow::FlowIdentityPrivateKeys;
```

private keys used at the flow layer that are persistable. 

this includes any kinds of ephemeral private keys. ephemeral keys do not need to be persisted. shared secrets not included. 

## Public Functions Documentation

### function keygen

```cpp
static FlowIdentityPrivateKeys keygen()
```

generate a new private key bundle for the flow layer. 

### function public_addr

```cpp
const FlowAddr & public_addr() const
```

get the public .loki or .snode address 

### function keyspace_location

```cpp
const dht::Key_t & keyspace_location() const
```

get the blinded dht keyspace location 

## Public Attributes Documentation

### variable sntrup

```cpp
PQKeyPair sntrup;
```


### variable identity

```cpp
SecretKey identity;
```


### variable encryption

```cpp
SecretKey encryption;
```


### variable derivedKey

```cpp
PrivateKey derivedKey;
```


-------------------------------

Updated on 2023-04-27 at 04:17:17 +0000