Skip to main content

For AI agents: the complete documentation index is at llms.txt. Markdown versions of pages are available by appending .md to the URL or sending Accept: text/markdown.

OrionEncryptedVault

OrionEncryptedVault​

A confidential implementation of OrionVault supporting active management strategies

MIN_CIPHERTEXT_LENGTH​

uint256 MIN_CIPHERTEXT_LENGTH

Minimum ciphertext length.

_portfolioCiphertext​

bytes _portfolioCiphertext

Encrypted portfolio shares per asset (w_0)

_intentCiphertext​

bytes _intentCiphertext

Encrypted strategist intent (w_1)

constructor​

constructor() public

Constructor that disables initializers for the implementation contract

initialize​

function initialize(address manager_, address strategist_, contract IOrionConfig config_, string name_, string symbol_, uint8 feeType_, uint16 performanceFee_, uint16 managementFee_, address depositAccessControl_, address holderAccessControl_, address transferAccessControl_) public

Initialize the vault

Parameters​

NameTypeDescription
manager_addressThe address of the vault manager
strategist_addressThe address of the vault strategist
config_contract IOrionConfigThe address of the OrionConfig contract
name_stringThe name of the vault
symbol_stringThe symbol of the vault
feeType_uint8The fee type
performanceFee_uint16The performance fee
managementFee_uint16The management fee
depositAccessControl_addressDeposit access control (address(0) = permissionless)
holderAccessControl_addressHolder access control (address(0) = permissionless)
transferAccessControl_addressTransfer access control (address(0) = permissionless)

submitIntent​

function submitIntent(bytes intentCiphertext) external

Submit an encrypted portfolio intent

Parameters​

NameTypeDescription
intentCiphertextbytesOpaque intent ciphertext

maxCiphertextLength​

function maxCiphertextLength() public view returns (uint256)

Maximum accepted ciphertext length for the current investment universe

Return Values​

NameTypeDescription
[0]uint256Max blob length.

getPortfolio​

function getPortfolio() external view returns (bytes portfolioCiphertext)

Returns the stored portfolio ciphertext

Return Values​

NameTypeDescription
portfolioCiphertextbytesOpaque portfolio

getIntent​

function getIntent() external view returns (bytes intentCiphertext)

Returns the stored intent ciphertext

Return Values​

NameTypeDescription
intentCiphertextbytesOpaque intent

updateVaultState​

function updateVaultState(bytes portfolioCiphertext, uint256 newTotalAssets) external

Updates the vault's encrypted portfolio and total assets

Can only be called by the liquidity orchestrator.

Parameters​

NameTypeDescription
portfolioCiphertextbytesOpaque portfolio
newTotalAssetsuint256The new total assets value for the vault