# Releases

Our goal is to provide a stable and reliable experience for our users.
Here we document the releases of our services and their features, and we intend
for this page to serve as the primary reference for users to find updates and
changes to our services.

## Blocky Attestation Service

Blocky Attestation Service (Blocky AS) is currently in beta, and we are
releasing new version every one to two weeks. We run the latest three versions
of the Blocky AS servers concurrently, so that when we stand up a server running
Blocky AS version *i*, we take down the server running the version *i-3*. It is
upon you as the user to update your the Blocky AS endpoints and code
measurements to new versions of the service, so that you can continue to use the
service without interruption.

Once Blocky AS is out of beta, we will provide a new Long Term Support (LTS)
version of the service every two months, and we will maintain the last two
LTS versions concurrently.

Below you will find lists of new features for each version and the
code measurement needed to verify the enclave attested public keys created
by each version of the Blocky AS servers.

> ⚠️ We do not provide compatibility guarantees between the beta versions.


### Blocky AS v0.1.0-beta.13

**Features**

- Added `bky-as plumbing` which contains low-level commands for finer-grained
control over `bky-as` workflows
- Fixed an issue with serialization of empty function input that led to
inconsistent `hash_of_input` values returned by Blocky AS TEE servers


**Info**

- Date: 2025-11-21
- SDK Commit: f246a3b5fed06a4bb653c788a4d1be5f623adc08


Blocky AS v0.1.0-beta.13 code measurement for the AWS Nitro Enclave platform
from [v0.1.0-beta.13/code_measurement.toml](/v0.1.0-beta.13/code_measurement.toml):


```toml
code_measurement = [
    { platform = "nitro", code = "2ca77d31730c113d8c4c7d271d1bea7964655391971df4e217b7ee33bbc9404e75a82d61eb0e8cb34492d7d074ed3173.9d25d9bd4d6e169601901391b4400f9ca6b6636f2ef48e18b38d095757071a3b2aff1352ea3fc406d853a4e587bc7ce3.f32a96a70f8733bef245e2b1d90323b385fe9ced9f4bfa20f81719c9ae1fd1eba82ac47ec72d40314d2fc5a88c8b0ebf" },
]
```

### Blocky AS v0.1.0-beta.12

**Features**

- Implemented 500KB limit on maximum HTTP request size in WASM runtime.
See [Limitations](/attestation-service/v0.1.0-beta.12/limitations) for more
details.
- Fixed an issue serialization of the `Result` struct in examples.


**Info**

- Date: 2025-08-27
- SDK Commit: f246a3b5fed06a4bb653c788a4d1be5f623adc08


Blocky AS v0.1.0-beta.12 code measurement for the AWS Nitro Enclave platform
from [v0.1.0-beta.12/code_measurement.toml](/v0.1.0-beta.12/code_measurement.toml):


```toml
code_measurement = [
    { platform = "nitro", code = "933fdfbf5a849ed07c0a8201f8813b8ab976f72e93722b3e4a28dbb41d2741fb581604845b6272b04a0fa5a8b59647bd.4b4d5b3661b3efc12920900c80e126e4ce783c522de6c02a2a5bf7af3a2b9327b86776f188e4be1c1c404a129dbda493.7e1fadfbec59aba9d45e3042fd322d5e61b3e849d7c7ea20084d946fce976d48773ae723c0e57e2d6311ff3667a3a8b5" },
]
```

### Blocky AS v0.1.0-beta.11

**Features**

- Function compilation to WASM is now done by the
[Blocky Compiler (`bky-c`)](https://github.com/blocky/compiler).
- Updated the
[Attesting Function Calls](/attestation-service/v0.1.0-beta.11/attest-fn-call)
tutorial with instructions on how to verify hashes in attested function call
claims.
- Added the
[Verifying Function Execution](/attestation-service/v0.1.0-beta.11/verification)
tutorial.
- Improved example testing
using [testscript](https://pkg.go.dev/github.com/rogpeppe/go-internal/testscript).


**Info**

- Date: 2025-05-06
- SDK Commit: f246a3b5fed06a4bb653c788a4d1be5f623adc08



```toml
code_measurement = [
    { platform = "nitro", code = "bb2600f6f2ef338a4f6f9f6e3e047d5e1191ba91441a669e7f34adbf642dab149fdeaee79aa50bc8cb724fb9e60e6cd1.4b4d5b3661b3efc12920900c80e126e4ce783c522de6c02a2a5bf7af3a2b9327b86776f188e4be1c1c404a129dbda493.f4a094cdf5e9532b57cb5ad57a637fb7df303d87a21645e1b047d2e6e02ce5bb55f7619b8670b7c60f521407cb120969" },
]
```

### Blocky AS v0.1.0-beta.10

**Features**

- If a function invocation using `bky-as attest-fn-call` results in an error,
the CLI now returns a non-zero exit code.
- Add automated testing for the
[Hello World - Attesting a Function Call](https://github.com/blocky/attestation-service-examples/tree/release/v0.1.0-beta.10/hello_world_attest_fn_call)
and the
[Getting Coin Prices From CoinGecko](https://github.com/blocky/attestation-service-examples/tree/release/v0.1.0-beta.10/coin_prices_from_coingecko)
examples.


**Info**

- Date: 2025-05-06
- SDK Commit: cc64d89d7650e6744b29aebf7202ce4e321d7e87



```toml
code_measurement = [
  { platform = "nitro", code = "d77d0752b6ecc4ed87868f1f4858e1f894ad30ffb1fcc196923e75418fa2c1fd694d70a36bdcc04212d0c52171539d2e.4b4d5b3661b3efc12920900c80e126e4ce783c522de6c02a2a5bf7af3a2b9327b86776f188e4be1c1c404a129dbda493.9f156bd270df79f90ea3eab03e43ad6bb69c1736c3a3f729eba6b05e29fb8d0378bf04809de57ca0aa657d22d19f1ec1" },
]
```

### Blocky AS v0.1.0-beta.9

**Features**

- Guest functions now have access to time from a
[`PTP`](https://en.wikipedia.org/wiki/Precision_Time_Protocol) device. See
[Accessing Wall Clock Time](https://github.com/blocky/attestation-service-examples/tree/release/v0.1.0-beta.9/time)
for more information
- Update code measurement serialization in enclave attestations to use
`snake_case`
instead of `goCase`.
- Improve the clarity of the error messages returned by the Blocky AS CLI when a
guest function times out.


**Info**

- Date: 2025-05-06
- SDK Commit: cc64d89d7650e6744b29aebf7202ce4e321d7e87



```toml
code_measurement = [
  { platform = "nitro", code = "5390c29b5776aaf3e7875a9691c734e3d0f207736d345a8ee3fe2a63bce1ab2e47160be9e93b60f0cdb70e94214b535d.4b4d5b3661b3efc12920900c80e126e4ce783c522de6c02a2a5bf7af3a2b9327b86776f188e4be1c1c404a129dbda493.fdfce3ac34c5df3dbd84e94f5b752c544fa3371164af4cef7724524ccd85b7e5c5c92ebf57e0ba649ecc37bdd5e2e9a2" },
]
```

### Blocky AS v0.1.0-beta.8

**Features**

- Serialize transitive attestations using ABI encoding to lower parsing costs in
Solidity smart contracts.See
[Bringing Attestations On Chain](/attestation-service/v0.1.0-beta.8/on-chain)
for more information.
- Update on-chain examples to use a single transaction with an enclave attested
application public key and a transitive attestations as parameters.
See [Bringing Attestations On Chain](/attestation-service/v0.1.0-beta.8/on-chain)
for more information.
- Speed up WASM build times in the
[Blocky AS examples repository](https://github.com/blocky/attestation-service-examples/tree/release/v0.1.0-beta.8)
by caching build dependencies.


**Info**

- Date: 2025-04-15
- SDK Commit: 84c8ecd31898f8d945de7226633906f853a2b4d8



```toml
code_measurement = [
  { platform = "nitro", code = "846f7236d8acfda25057b15b4296bcb75e93f67f47501fc643fbf3abd6823cdda7b51c1492778286ffa9d71e4356347e.4b4d5b3661b3efc12920900c80e126e4ce783c522de6c02a2a5bf7af3a2b9327b86776f188e4be1c1c404a129dbda493.932fd826a39970091fa9379d780749a188b271833ffddf935cfc2cc24b2db410870179330b77e25fd398a9c7507145d8" },
]
```

### Blocky AS v0.1.0-beta.7

**Features**

- Increase the size limit on maximum HTTP response size in WASM runtime from 500
KB to 5 MB.
See [Limitations](/attestation-service/v0.1.0-beta.7/limitations) for more
details.
- Expand the
[Blocky AS examples repository](https://github.com/blocky/attestation-service-examples/tree/release/v0.1.0-beta.7)
with the following examples:
  - [ Accessing Wall Clock Time ](https://github.com/blocky/attestation-service-examples/tree/release/v0.1.0-beta.7/time)
  - [Getting Esports Data From Rimble](https://github.com/blocky/attestation-service-examples/tree/release/v0.1.0-beta.7/esports_data_from_rimble)
  - [Getting Sports Data from SportRadar](https://github.com/blocky/attestation-service-examples/tree/release/v0.1.0-beta.7/sports_data_from_sportradar).
- Update
the [Hello World - Bringing A Blocky AS Function Call Attestation On Chain](https://github.com/blocky/attestation-service-examples/blob/release/v0.1.0-beta.7/hello_world_on_chain/README.md)
example to use a single function to verify a transitive attestation on chain
in the
[User](https://github.com/blocky/attestation-service-examples/blob/release/v0.1.0-beta.7/hello_world_on_chain/contracts/User.sol)
contract.


**Info**

- Date: 2025-04-08
- SDK Commit: a3bf02f9345bd4867732fb091031bbc2b956c0bc



```toml
code_measurement = [
  { platform = "nitro", code = "a16b6d19caa4b3a1f8df4dae752f4077c71109ccb8a951afdb5c7d83134f80fe65f1993a222df41af2d2c4c767448ad5.4b4d5b3661b3efc12920900c80e126e4ce783c522de6c02a2a5bf7af3a2b9327b86776f188e4be1c1c404a129dbda493.e5aa40f6ce04dcfa1932ff853f3f6870efd1c42bdc4e04f37fdba472aafdb97fa0be146feedd9fb41a26c36dfe6a72e7" },
]
```

### Blocky AS v0.1.0-beta.6

**Features**

- Add support for `time.Now()` function in guest functions to produce an
accurate timestamp.


**Info**

- Date: 2025-04-03
- SDK Commit: 898e0b21cfb6e86d051677aa116cebe0926c025a



```toml
code_measurement = [
  { platform = "nitro", code = "9aaf5b28928e937caee795fe27390f2029339d8affe9c8a21d81374f1a8602fabdf680ef72f2ea1a1c5b0922b6e13c37.4b4d5b3661b3efc12920900c80e126e4ce783c522de6c02a2a5bf7af3a2b9327b86776f188e4be1c1c404a129dbda493.c4e105151bb6a39d98ef434cceefa7470031a6f062108d2178c2c727a205725c5c05859f1447d242c71d62a72755f416" },
]
```

### Blocky AS v0.1.0-beta.5

**Features**

- Add support for random number generation in Blocky AS host functions. See
[random number generation example](https://github.com/blocky/attestation-service-examples/tree/release/v0.1.0-beta.5/random)
for more details.
- Simplify the output of the Blocky AS server when running in local mode.
- Update runtime IO limits. See
[Limitations](/attestation-service/v0.1.0-beta.5/limitations)
for more details.
- Add `EnclaveAttestation` and `TransitiveAttestation` types to the
[`basm` SDK](https://github.com/blocky/basm-go-sdk/tree/v0.1.0-beta.5)
to support their verification inside guest functions.
- Update enclave attestation serialization format.


**Info**

- Date: 2025-03-27
- SDK Commit: 898e0b21cfb6e86d051677aa116cebe0926c025a



```toml
code_measurement = [
  { platform = "nitro", code = "dad4d8f86b9734657f15c1cef2dcfac2fa380593c81f6c914bdf2900cb7bf272d9180075748f345141d01206e354940b.4b4d5b3661b3efc12920900c80e126e4ce783c522de6c02a2a5bf7af3a2b9327b86776f188e4be1c1c404a129dbda493.1823abeee1700372e0f472e8d6a94287221d92e5654822d9fcf5a5d7270c3e7cee931cfd9a603d8c8e04c372b68b49a6" },
]
```

### Blocky AS v0.1.0-beta.4

**Features**

- Update installation process to use the
[
`v0.1.0-beta.4` release](https://github.com/blocky/attestation-service-demo/tree/v0.1.0-beta.4).
See [Setup](/attestation-service/v0.1.0-beta.4/setup).
- Introduce the
[Blocky Attestation Service Go SDK](https://github.com/blocky/basm-go-sdk/tree/v0.1.0-beta.4)
to aid the development of functions for execution on the Blocky Attestation
Service.
See [Attesting Function Calls](/attestation-service/v0.1.0-beta.4/attest-fn-call).
- Update the input to `bky-as attest-fn-call` to use a single request, not an
array of requests.
See [Attesting Function Calls](/attestation-service/v0.1.0-beta.4/attest-fn-call).
- Update the output format of `bky-as attest-fn-call`.
See [Attesting Function Calls](/attestation-service/v0.1.0-beta.4/attest-fn-call).
- Introduce `TAParserLib.sol` for verifying and parsing Blocky Attestation
Service transitive attestation on chain.
See [Bringing Attestations On Chain](/attestation-service/v0.1.0-beta.4/on-chain).


**Info**

- Date: 2025-03-18
- SDK Commit: a4be1da53ba8468c616559b87f3ff81090f6159d



```toml
code_measurement = [
  { platform = "nitro", code = "64624289e683b98e3c00ff133f51da1b7e25888a43acbdbeed7edde481fff870932920f381c85c8c80b1364ec8385f65.4b4d5b3661b3efc12920900c80e126e4ce783c522de6c02a2a5bf7af3a2b9327b86776f188e4be1c1c404a129dbda493.f722e53b8a9fb2f912d3d6838e860d3c28131663b5171e21991e4bb32edddd863d41f69009a39c3274c5bad00dd2775b" },
]
```