Fuchsia 是持續更新的專案,會提供新功能、強化功能和安全性修正。Fuchsia 的軟體更新系統使用 Update Framework (TUF) 1.0 版。 不過,Fuchsia 與 TUF 還是有些差異:
規格版本
Fuchsia 存放區中的 Fuchsia 存放區版本列為 目標角色已簽署資料的頂層屬性。以下範例說明規格版本的格式:
{
...
"signed": {
"_type": ROLE,
"spec_version": "1",
"custom": {
"fuchsia_spec_version": <FUCHSIA_SPEC_VERSION>,
}
...
}
值定義:
- 位於
FUCHSIA_SPEC_VERSION
,INT
。Fuchsia 存放區規格的值 版本。例如:1
。
套件整理
在 Fuchsia 存放區中,針對 Fuchsia 套件的 TUF 目標包含指向套件中繼資料封存庫的自訂中繼資料。這個範例顯示 套件的格式:
{
...
"targets": {
"/PACKAGE_PATH": {
...
}
...
}
}
值的定義:
PACKAGE_PATH
。來自存放區中套件的相對路徑 基準網址。
Merkle 根
在 Fuchsia 存放區中,每個套件目標都包含 套件中繼 FAR 的 merkle root,當做自訂屬性。 以下範例顯示梅克爾根的格式:
{
...
"targets" : {
PACKAGEPATH : {
"length" : LENGTH,
"hashes" : HASHES,
"custom" : {
"merkle" : <MERKLE_ROOT>,
"size" : <BLOB_SIZE>,
}
}
...
}
}
值的定義:
- 位於
MERKLE_ROOT
,STRING
。套件元資料 FAR 的梅克爾根雜湊十六進位字串。 - 位於
BLOB_SIZE
,INT
。MERKLE_ROOT
所識別的未加密 BLOB 大小,以位元組為單位。