---
title: llarp::service::EncryptedIntroSet
summary: public version of the introset that is encrypted 

---

# llarp::service::EncryptedIntroSet



public version of the introset that is encrypted 


`#include <intro_set.hpp>`

## Public Types

|                | Name           |
| -------------- | -------------- |
| using std::vector< byte_t > | **[Payload_t](Classes/structllarp_1_1service_1_1EncryptedIntroSet.md#using-payload-t)**  |

## Public Functions

|                | Name           |
| -------------- | -------------- |
| bool | **[Sign](Classes/structllarp_1_1service_1_1EncryptedIntroSet.md#function-sign)**(const [PrivateKey](Classes/structllarp_1_1PrivateKey.md) & k) |
| bool | **[IsExpired](Classes/structllarp_1_1service_1_1EncryptedIntroSet.md#function-isexpired)**(llarp_time_t now) const |
| bool | **[BEncode](Classes/structllarp_1_1service_1_1EncryptedIntroSet.md#function-bencode)**([llarp_buffer_t](Classes/structllarp__buffer__t.md) * buf) const |
| bool | **[BDecode](Classes/structllarp_1_1service_1_1EncryptedIntroSet.md#function-bdecode)**([llarp_buffer_t](Classes/structllarp__buffer__t.md) * buf) |
| bool | **[DecodeKey](Classes/structllarp_1_1service_1_1EncryptedIntroSet.md#function-decodekey)**(const [llarp_buffer_t](Classes/structllarp__buffer__t.md) & key, [llarp_buffer_t](Classes/structllarp__buffer__t.md) * buf) |
| bool | **[OtherIsNewer](Classes/structllarp_1_1service_1_1EncryptedIntroSet.md#function-otherisnewer)**(const [EncryptedIntroSet](Classes/structllarp_1_1service_1_1EncryptedIntroSet.md) & other) const |
| bool | **[Verify](Classes/structllarp_1_1service_1_1EncryptedIntroSet.md#function-verify)**(llarp_time_t now) const<br>verify signature and timestamp  |
| std::string | **[ToString](Classes/structllarp_1_1service_1_1EncryptedIntroSet.md#function-tostring)**() const |
| util::StatusObject | **[ExtractStatus](Classes/structllarp_1_1service_1_1EncryptedIntroSet.md#function-extractstatus)**() const |
| std::optional< [IntroSet](Classes/structllarp_1_1service_1_1IntroSet.md) > | **[MaybeDecrypt](Classes/structllarp_1_1service_1_1EncryptedIntroSet.md#function-maybedecrypt)**(const [PubKey](Classes/structllarp_1_1PubKey.md) & rootKey) const |

## Public Attributes

|                | Name           |
| -------------- | -------------- |
| [PubKey](Classes/structllarp_1_1PubKey.md) | **[derivedSigningKey](Classes/structllarp_1_1service_1_1EncryptedIntroSet.md#variable-derivedsigningkey)**  |
| llarp_time_t | **[signedAt](Classes/structllarp_1_1service_1_1EncryptedIntroSet.md#variable-signedat)**  |
| Payload_t | **[introsetPayload](Classes/structllarp_1_1service_1_1EncryptedIntroSet.md#variable-introsetpayload)**  |
| [TunnelNonce](Classes/structllarp_1_1AlignedBuffer.md) | **[nounce](Classes/structllarp_1_1service_1_1EncryptedIntroSet.md#variable-nounce)**  |
| std::optional< [Tag](Classes/structllarp_1_1service_1_1Tag.md) > | **[topic](Classes/structllarp_1_1service_1_1EncryptedIntroSet.md#variable-topic)**  |
| [Signature](Classes/structllarp_1_1Signature.md) | **[sig](Classes/structllarp_1_1service_1_1EncryptedIntroSet.md#variable-sig)**  |

## Public Types Documentation

### using Payload_t

```cpp
using llarp::service::EncryptedIntroSet::Payload_t =  std::vector<byte_t>;
```


## Public Functions Documentation

### function Sign

```cpp
bool Sign(
    const PrivateKey & k
)
```


### function IsExpired

```cpp
bool IsExpired(
    llarp_time_t now
) const
```


### function BEncode

```cpp
bool BEncode(
    llarp_buffer_t * buf
) const
```


### function BDecode

```cpp
inline bool BDecode(
    llarp_buffer_t * buf
)
```


### function DecodeKey

```cpp
bool DecodeKey(
    const llarp_buffer_t & key,
    llarp_buffer_t * buf
)
```


### function OtherIsNewer

```cpp
bool OtherIsNewer(
    const EncryptedIntroSet & other
) const
```


### function Verify

```cpp
bool Verify(
    llarp_time_t now
) const
```

verify signature and timestamp 

### function ToString

```cpp
std::string ToString() const
```


### function ExtractStatus

```cpp
util::StatusObject ExtractStatus() const
```


### function MaybeDecrypt

```cpp
std::optional< IntroSet > MaybeDecrypt(
    const PubKey & rootKey
) const
```


## Public Attributes Documentation

### variable derivedSigningKey

```cpp
PubKey derivedSigningKey;
```


### variable signedAt

```cpp
llarp_time_t signedAt = 0s;
```


### variable introsetPayload

```cpp
Payload_t introsetPayload;
```


### variable nounce

```cpp
TunnelNonce nounce;
```


### variable topic

```cpp
std::optional< Tag > topic;
```


### variable sig

```cpp
Signature sig;
```


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

Updated on 2024-11-10 at 05:10:02 +0000