diff --git a/Cargo.lock b/Cargo.lock index e2d855c4..a6388c2c 100644 --- a/Cargo.lock +++ b/Cargo.lock @@ -82,12 +82,12 @@ dependencies = [ [[package]] name = "ascii-armor" -version = "0.8.0" +version = "0.9.0" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "6ca6f0044fabe840af8db8de7f3bff0c85af2a5c2a173780248c1716e86f5cc1" +checksum = "0269eb842ec952b027df0fc33184b6a0dea5ea473160b36992274eb53758461e" dependencies = [ "amplify", - "baid64 0.3.0", + "baid64", "base85", "sha2", "strict_encoding", @@ -101,21 +101,9 @@ checksum = "ace50bade8e6234aa140d9a2f552bbee1db4d353f69b8217bc503490fc1a9f26" [[package]] name = "baid64" -version = "0.2.2" +version = "0.4.1" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "95dabc2759e01e2c382968639868a701f384a18890934f9e75d4feb4d6623794" -dependencies = [ - "amplify", - "base64", - "mnemonic", - "sha2", -] - -[[package]] -name = "baid64" -version = "0.3.0" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "30acc16368c00c4d3ce4526d0c1528e22d75814534b3dba97e871aa5f8395697" +checksum = "6cb4a8b2f1afee4ef00a190b260ad871842b93206177b59631fecd325d48d538" dependencies = [ "amplify", "base64", @@ -165,7 +153,7 @@ dependencies = [ [[package]] name = "bp-consensus" -version = "0.12.0-beta.1" +version = "0.12.0-beta.2" dependencies = [ "amplify", "chrono", @@ -178,7 +166,7 @@ dependencies = [ [[package]] name = "bp-core" -version = "0.12.0-beta.1" +version = "0.12.0-beta.2" dependencies = [ "amplify", "bp-consensus", @@ -197,7 +185,7 @@ dependencies = [ [[package]] name = "bp-dbc" -version = "0.12.0-beta.1" +version = "0.12.0-beta.2" dependencies = [ "amplify", "base85", @@ -210,10 +198,10 @@ dependencies = [ [[package]] name = "bp-seals" -version = "0.12.0-beta.1" +version = "0.12.0-beta.2" dependencies = [ "amplify", - "baid64 0.2.2", + "baid64", "bp-consensus", "bp-dbc", "commit_verify", @@ -237,9 +225,9 @@ checksum = "1fd0f2584146f6f2ef48085050886acf353beff7305ebd1ae69500e27c67f64b" [[package]] name = "cc" -version = "1.2.1" +version = "1.2.2" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "fd9de9f2205d5ef3fd67e685b0df337994ddd4495e2a28d185500d0e1edfea47" +checksum = "f34d93e62b03caf570cccc334cbc6c2fceca82f39211051345108adcba3eebdc" dependencies = [ "shlex", ] @@ -266,9 +254,9 @@ dependencies = [ [[package]] name = "commit_encoding_derive" -version = "0.12.0-alpha.2" +version = "0.12.0-beta.1" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "16b452b3e69f9cfd18d345684a7e06827c84798724f8a58addc387c401cab8fb" +checksum = "137f212bdbb4abf7bb648ba73feed1d981a4f4681821b15d79a37bfdbc206070" dependencies = [ "amplify", "amplify_syn", @@ -279,9 +267,9 @@ dependencies = [ [[package]] name = "commit_verify" -version = "0.12.0-alpha.3" +version = "0.12.0-beta.1" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "545fb0e0fedd69e72869d3b2dde6f96af63a38f70f62f148bef2672bef5d32bd" +checksum = "bef304002218b4136632abe4145a168d8b8f95e4d5443d377240ab2b1868a52a" dependencies = [ "amplify", "commit_encoding_derive", @@ -312,9 +300,9 @@ checksum = "773648b94d0e5d620f64f280777445740e61fe701025087ec8b57f45c791888b" [[package]] name = "cpufeatures" -version = "0.2.15" +version = "0.2.16" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "0ca741a962e1b0bff6d724a1a0958b686406e853bb14061f218562e1896f95e6" +checksum = "16b80225097f2e5ae4e7179dd2266824648f3e2f49d9134d584b76389d31c4c3" dependencies = [ "libc", ] @@ -370,9 +358,9 @@ dependencies = [ [[package]] name = "hashbrown" -version = "0.15.1" +version = "0.15.2" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "3a9bfc1af68b1726ea47d3d5109de126281def866b33970e10fbab11b5dafab3" +checksum = "bf151400ff0baff5465007dd2f3e717f3fe502074ca563069ce3a6629d07b289" [[package]] name = "heck" @@ -433,9 +421,9 @@ dependencies = [ [[package]] name = "libc" -version = "0.2.162" +version = "0.2.167" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "18d287de67fe55fd7e1581fe933d965a5a9477b38e949cfa9f8574ef01506398" +checksum = "09d6582e104315a817dff97f75133544b2e094ee22447d2acf4a74e189ba06fc" [[package]] name = "log" @@ -491,9 +479,9 @@ dependencies = [ [[package]] name = "proc-macro2" -version = "1.0.89" +version = "1.0.92" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "f139b0662de085916d1fb67d2b4169d1addddda1919e696f3252b740b629986e" +checksum = "37d3544b3f2748c54e147655edb5025752e2303145b5aefb3c3ea2c78b973bb0" dependencies = [ "unicode-ident", ] @@ -599,7 +587,7 @@ checksum = "ad1e866f866923f252f05c889987993144fb74e722403468a4ebd70c3cd756c0" dependencies = [ "proc-macro2", "quote", - "syn 2.0.87", + "syn 2.0.89", ] [[package]] @@ -631,14 +619,15 @@ checksum = "0fda2ff0d084019ba4d7c6f371c95d8fd75ce3524c3cb8fb653a3023f6323e64" [[package]] name = "single_use_seals" -version = "0.12.0-alpha.3" -source = "git+https://github.com/LNP-BP/client_side_validation?branch=v0.12#38699a31423eba71de8b81322c08390fd4f1fe6d" +version = "0.12.0-beta.1" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "fa1f0140117847f5470c5ab2e68f7645bfe6fe27933b9160de63832ecaf0f3d2" [[package]] name = "strict_encoding" -version = "2.8.0" +version = "2.8.1" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "3b71b5ba13c289a8b6f0a3ed4abebb92ce2d57b805b1db26e543b4ac26237870" +checksum = "8fd36b71bb44ca146be0b2185ed6c6deb3684cc0d5c3a94284e97fe7fa6a642f" dependencies = [ "amplify", "strict_encoding_derive", @@ -660,13 +649,13 @@ dependencies = [ [[package]] name = "strict_types" -version = "2.8.0" +version = "2.8.1" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "ef2dcdbb3f239b310f3d07e81e8f4da3b5ffe17da980a360ca029e9bc263f049" +checksum = "3e208d1bd29a0f70d7ee90a91d76446b8bb7b1b8212d06e031e396d52e2fe891" dependencies = [ "amplify", "ascii-armor", - "baid64 0.3.0", + "baid64", "indexmap", "sha2", "strict_encoding", @@ -697,9 +686,9 @@ dependencies = [ [[package]] name = "syn" -version = "2.0.87" +version = "2.0.89" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "25aa4ce346d03a6dcd68dd8b4010bcb74e54e62c90c573f394c46eae99aba32d" +checksum = "44d46482f1c1c87acd84dea20c1bf5ebff4c757009ed6bf19cfd36fb10e92c4e" dependencies = [ "proc-macro2", "quote", @@ -723,7 +712,7 @@ checksum = "4fee6c4efc90059e10f81e6d42c60a18f76588c3d74cb83a0b242a2b6c7504c1" dependencies = [ "proc-macro2", "quote", - "syn 2.0.87", + "syn 2.0.89", ] [[package]] @@ -734,9 +723,9 @@ checksum = "42ff0bf0c66b8238c6f3b578df37d0b7848e55df8577b3f74f92a69acceeb825" [[package]] name = "unicode-ident" -version = "1.0.13" +version = "1.0.14" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "e91b56cd4cadaeb79bbf1a5645f6b4f8dc5bde8834ad5894a8db35fda9efa1fe" +checksum = "adb9e6ca4f869e1180728b7950e35922a7fc6397f7b641499e8f3ef06e50dc83" [[package]] name = "version_check" @@ -792,7 +781,7 @@ dependencies = [ "once_cell", "proc-macro2", "quote", - "syn 2.0.87", + "syn 2.0.89", "wasm-bindgen-shared", ] @@ -826,7 +815,7 @@ checksum = "26c6ab57572f7a24a4985830b120de1594465e5d500f24afe89e16b4e833ef68" dependencies = [ "proc-macro2", "quote", - "syn 2.0.87", + "syn 2.0.89", "wasm-bindgen-backend", "wasm-bindgen-shared", ] @@ -860,7 +849,7 @@ checksum = "c97b2ef2c8d627381e51c071c2ab328eac606d3f69dd82bcbca20a9e389d95f0" dependencies = [ "proc-macro2", "quote", - "syn 2.0.87", + "syn 2.0.89", ] [[package]] @@ -982,5 +971,5 @@ checksum = "fa4f8080344d4671fb4e831a13ad1e68092748387dfc4f55e356242fae12ce3e" dependencies = [ "proc-macro2", "quote", - "syn 2.0.87", + "syn 2.0.89", ] diff --git a/Cargo.toml b/Cargo.toml index ff495970..cec909ea 100644 --- a/Cargo.toml +++ b/Cargo.toml @@ -13,7 +13,7 @@ default-members = [ ] [workspace.package] -version = "0.12.0-beta.1" +version = "0.12.0-beta.2" authors = ["Dr Maxim Orlovsky "] homepage = "https://github.com/BP-WG" repository = "https://github.com/BP-WG/bp-core" @@ -22,14 +22,14 @@ edition = "2021" license = "Apache-2.0" [workspace.dependencies] -amplify = "4.7.0" -strict_encoding = "2.7.2" -strict_types = "2.7.2" -commit_verify = "0.12.0-alpha.3" -single_use_seals = "0.12.0-alpha.3" -bp-consensus = { version = "0.12.0-beta.1", path = "./consensus" } -bp-dbc = { version = "0.12.0-beta.1", path = "./dbc" } -bp-seals = { version = "0.12.0-beta.1", path = "./seals" } +amplify = "4.8.0" +strict_encoding = "2.8.1" +strict_types = "2.8.1" +commit_verify = "0.12.0-beta.1" +single_use_seals = "0.12.0-beta.1" +bp-consensus = { version = "0.12.0-beta.2", path = "./consensus" } +bp-dbc = { version = "0.12.0-beta.2", path = "./dbc" } +bp-seals = { version = "0.12.0-beta.2", path = "./seals" } secp256k1 = { version = "0.30.0", features = ["global-context", "rand"] } serde_crate = { package = "serde", version = "1", features = ["derive"] } @@ -89,6 +89,3 @@ wasm-bindgen-test = "0.3" [package.metadata.docs.rs] features = ["all"] - -[patch.crates-io] -single_use_seals = { git = "https://github.com/LNP-BP/client_side_validation", branch = "v0.12" } diff --git a/consensus/src/stl.rs b/consensus/src/stl.rs index f4b0c07f..e0322e99 100644 --- a/consensus/src/stl.rs +++ b/consensus/src/stl.rs @@ -32,9 +32,9 @@ use crate::{ }; pub const LIB_ID_BP_TX: &str = - "stl:9WwTYiP2-OadKCZP-cR0bJ~Y-qruINYX-bXZFj8Y-fsQoGgo#signal-color-cipher"; + "stl:9WwTYiP2-OadKCZP-cR0bJ_Y-qruINYX-bXZFj8Y-fsQoGgo#signal-color-cipher"; pub const LIB_ID_BP_CONSENSUS: &str = - "stl:q7G95wzt-SxT2BMV-t~PokBt-wNYgZTu-AaYAtM3-rYjlzs4#agenda-wolf-pagoda"; + "stl:wUfEZiWN-tvMpLYq-~h1iQC3-bHNSjiW-h9d7O0t-i154uQ0#quiz-patent-exit"; #[deprecated(since = "0.10.8", note = "use _bp_tx_stl instead")] fn _bitcoin_stl() -> Result { _bp_tx_stl() } diff --git a/seals/Cargo.toml b/seals/Cargo.toml index 26625d63..f9fc8a5e 100644 --- a/seals/Cargo.toml +++ b/seals/Cargo.toml @@ -18,7 +18,7 @@ path = "src/lib.rs" [dependencies] amplify = { workspace = true } -baid64 = "0.2.2" +baid64 = "0.4.1" single_use_seals = { workspace = true } commit_verify = { workspace = true } strict_encoding = { workspace = true } diff --git a/seals/src/lib.rs b/seals/src/lib.rs index 175c5db2..b39f9b30 100644 --- a/seals/src/lib.rs +++ b/seals/src/lib.rs @@ -44,7 +44,5 @@ extern crate commit_verify; extern crate serde_crate as serde; mod txout; -mod secret; -pub use secret::SecretSeal; pub use txout::{Anchor, AnchorError, Noise, TxoSeal, TxoSealExt}; diff --git a/seals/src/secret.rs b/seals/src/secret.rs deleted file mode 100644 index 5772da0f..00000000 --- a/seals/src/secret.rs +++ /dev/null @@ -1,83 +0,0 @@ -// Bitcoin protocol single-use-seals library. -// -// SPDX-License-Identifier: Apache-2.0 -// -// Written in 2019-2024 by -// Dr Maxim Orlovsky -// -// Copyright (C) 2019-2024 LNP/BP Standards Association. All rights reserved. -// -// Licensed under the Apache License, Version 2.0 (the "License"); -// you may not use this file except in compliance with the License. -// You may obtain a copy of the License at -// -// http://www.apache.org/licenses/LICENSE-2.0 -// -// Unless required by applicable law or agreed to in writing, software -// distributed under the License is distributed on an "AS IS" BASIS, -// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. -// See the License for the specific language governing permissions and -// limitations under the License. - -use std::fmt::{self, Display, Formatter}; -use std::str::FromStr; - -use amplify::{ByteArray, Bytes32, Wrapper}; -use baid64::{Baid64ParseError, DisplayBaid64, FromBaid64Str}; -use commit_verify::{CommitmentId, DigestExt, Sha256}; - -/// Confidential version of transaction outpoint-based single-use-seal -#[derive(Wrapper, Copy, Clone, PartialEq, Eq, PartialOrd, Ord, Hash, Debug, From)] -#[wrapper(Deref, BorrowSlice, Hex, Index, RangeOps)] -#[derive(StrictType, StrictDumb, StrictEncode, StrictDecode)] -#[strict_type(lib = dbc::LIB_NAME_BPCORE)] -#[cfg_attr( - feature = "serde", - derive(Serialize, Deserialize), - serde(crate = "serde_crate", transparent) -)] -pub struct SecretSeal( - #[from] - #[from([u8; 32])] - Bytes32, -); - -impl CommitmentId for SecretSeal { - const TAG: &'static str = "urn:lnp-bp:seals:secret#2024-02-03"; -} - -impl From for SecretSeal { - fn from(hasher: Sha256) -> Self { hasher.finish().into() } -} - -impl DisplayBaid64 for SecretSeal { - const HRI: &'static str = "utxob"; - const CHUNKING: bool = true; - const PREFIX: bool = true; - const EMBED_CHECKSUM: bool = true; - const MNEMONIC: bool = false; - fn to_baid64_payload(&self) -> [u8; 32] { self.to_byte_array() } -} -impl FromBaid64Str for SecretSeal {} -impl FromStr for SecretSeal { - type Err = Baid64ParseError; - fn from_str(s: &str) -> Result { Self::from_baid64_str(s) } -} -impl Display for SecretSeal { - fn fmt(&self, f: &mut Formatter<'_>) -> fmt::Result { self.fmt_baid64(f) } -} - -#[cfg(test)] -mod test { - use super::*; - - #[test] - fn secret_seal_baid64() { - let baid64 = "utxob:xDfmDF9g-yNOjriV-6Anbe6H-MLJ!!g6-lo7Dd4f-dhWBW8S-XYGBm"; - let seal: SecretSeal = baid64.parse().unwrap(); - assert_eq!(baid64, seal.to_string()); - assert_eq!(seal.to_string(), seal.to_baid64_string()); - let reconstructed = SecretSeal::from_str(&baid64.replace('-', "")).unwrap(); - assert_eq!(reconstructed, seal); - } -} diff --git a/seals/src/txout.rs b/seals/src/txout.rs index a9c004e2..abc3ef37 100644 --- a/seals/src/txout.rs +++ b/seals/src/txout.rs @@ -28,12 +28,10 @@ use core::marker::PhantomData; use amplify::confinement::TinyOrdMap; use amplify::{ByteArray, Bytes, Bytes32}; use bc::{Outpoint, Tx, Txid}; -use commit_verify::{mpc, CommitId, ReservedBytes}; +use commit_verify::{mpc, CommitId, ReservedBytes, StrictHash}; use single_use_seals::{ClientSideWitness, PublishedWitness, SealWitness, SingleUseSeal}; use strict_encoding::StrictDumb; -use crate::SecretSeal; - #[derive(Copy, Clone, Ord, PartialOrd, Eq, PartialEq, Hash, Debug, From)] #[derive(StrictType, StrictDumb, StrictEncode, StrictDecode)] #[strict_type(lib = dbc::LIB_NAME_BPCORE)] @@ -162,7 +160,7 @@ impl StrictDumb for TxoSealExt { #[derive(StrictType, StrictDumb, StrictEncode, StrictDecode)] #[strict_type(lib = dbc::LIB_NAME_BPCORE)] #[derive(CommitEncode)] -#[commit_encode(strategy = strict, id = SecretSeal)] +#[commit_encode(strategy = strict, id = StrictHash)] #[cfg_attr(feature = "serde", derive(Serialize, Deserialize), serde(crate = "serde_crate"))] pub struct TxoSeal { pub primary: Outpoint, diff --git a/src/stl.rs b/src/stl.rs index f6224fd8..b04758b8 100644 --- a/src/stl.rs +++ b/src/stl.rs @@ -29,7 +29,7 @@ use strict_types::{CompileError, LibBuilder, TypeLib}; /// Strict types id for the library providing data types from [`dbc`] and /// [`seals`] crates. pub const LIB_ID_BPCORE: &str = - "stl:3xUSwL0a-VuYPFl2-Cdk3L21-yX8c1Kg-~wRzG1T-B2FgGWg#pastel-voice-binary"; + "stl:xM0Q4fBV-9f68DxC-koz0lAW-70tm5F2-gLljyhC-YmIuIgI#inca-nevada-garbo"; fn _bp_core_stl() -> Result { LibBuilder::new(libname!(LIB_NAME_BPCORE), tiny_bset! { @@ -41,7 +41,6 @@ fn _bp_core_stl() -> Result { .transpile::>() .transpile::>() .transpile::>() - .transpile::() .compile() } diff --git a/stl/BPCore@0.1.0.sta b/stl/BPCore@0.1.0.sta index e9bbbd8e..a3f6d1dd 100644 --- a/stl/BPCore@0.1.0.sta +++ b/stl/BPCore@0.1.0.sta @@ -1,13 +1,13 @@ -----BEGIN STRICT TYPE LIB----- -Id: stl:3xUSwL0a-VuYPFl2-Cdk3L21-yX8c1Kg-~wRzG1T-B2FgGWg#pastel-voice-binary +Id: stl:xM0Q4fBV-9f68DxC-koz0lAW-70tm5F2-gLljyhC-YmIuIgI#inca-nevada-garbo Name: BPCore Dependencies: - CommitVerify#escort-between-doctor, - Bitcoin#signal-color-cipher -Check-SHA256: dfc6b52b44c13f1e0221c81b8ddaaab6f62356277ed0d01c6913c1841edfcbce + Bitcoin#signal-color-cipher, + CommitVerify#uranium-alien-extend +Check-SHA256: 545216f74122d153f1d6105843b85ae720cbe7f3e961784873589e1e77cff415 -20~CnZ*pY?<6X>JJsA>%$n#j0HLDJN5-IKgM_J7b(p+0MPG +20~CnZ*pY<^=uPjBlbC`N(qzPM@Gr{imSMTSY5T*7C#t%#3&jH2SRCdV{d70{#(;mQ!wWlp{2syrjnjh +HcKcJQ)S9nWc+D5OlRfU3`1{iZE18?WpZg|c>)JQX>?<6X>JJsA>%$n#j0HLDJN5-IKgM_J7b(p+0MPG k2Gl)y2(Rz1Xgc#bS10xxe^o?x}!PNUwajGr*TW+dUY6G&@nZ7)X6RBh6__;a%pgMLV0v$b1}QF=!A)P #jpo4axu-4_As_7EzOC4+`8Vyy2R;!*$Y%*a87SzWk_LjXkV<^ZRI~s#T41Gjc0(`3ajfaCJX&HEu+AC q+L0mO$tn9VP;cfa%pgMqk=;7%h%D+p%U7S;b1RT)c9`>#Kd;Rz-U=aO9W+B1XOrwWT}OOcT=8d`>?<6 @@ -17,35 +17,34 @@ $C@F;S3|*6`1-v+nBdcqJ?FPKcnV2wbY*gGVQf%qwlfK-7{9iX4Q|L-q$GzUMp|h1qf|zVo-8#Z)O4XG~<<+D_!9(f=9GKe=!3-k8N4#^#HB7;T~7D$RG?0 -ZE#~ya&L5RV{dE%w_I?;0yBOH^mF6?Djz6lx~sMot1;YamDqZyx)9*`FqMAh9bq(Cy9Eg3;jcYvA-~r9 -`yDZYr+MW?bl_I82yJj1qf|zVo-8#Z)O4XG~<<+D_!9(f=9GKe=!3-k8N4#^#HB7;T~7D$RG?0 +ZE#~ya&L5RV{dE%{#(;mQ!wWlp{2syrjnjhHcKcJQ)S9nWc+D5OlRfUFqMAh9bq(Cy9Eg3;jcYvA-~r9 +`yDZYr+MW?bl_I82yJjMkUC=^p=%2;IlX*x`2<=IM+oS{WBxhi`4 -5#=P00B=oNOv`$GNaGN-l+$k(vt{eVq;KpZ*OJ+M^4XN(CAD)cag{ -4Q63%Y+_+!Yfy4;Z)O6wTyVnzGkys4bL0OiA1G+LtF{%ZG2CjE*m|hC5a9Wf_h5K%L=laq&yA1JoJ^{7 +4Q63%Y+_+!Yfy4;Z)O7iThmulFy|SerNZ2%lAcpGODGgmWy)A&{AoH&XXV+G_h5K%L=laq&yA1JoJ^{7 >oKLkF4~iax8KK|47hp`L2hGcZ*o*&aB^jIP;zf?W(EZaZEa#ua&K>D0rWKEm6$7C;Vyzlv_O9`13r&! -S?Kiut+?SHSGC9>3=3^=V^DH$bZ=vCYy!7jaKi#KehBn)e&!uv -G+Da^2;||fJ!&Dp*8BS%F@mRgM^%H|xc>sh|D -n*!v8^Ea7rh?dzC2n-EoVQg$-VPk7ha&K>D0=Han!vZsY2=sH~|0*9SXu7Mm6{|7aYL(b}sJal~`IGlx +S?Kiut+?SHSGC9>3=3^=V^DH$bZ=vCYy$pU(^pe4=NX};!rZ2ko>MkUC=^p=%2;IlX*x`2<=HTme&!uv +G+Da^2;||fJ!&Dp*8BS%F@mRgM^%H|xc>sh|D +n*!v8^Ea7rh?dzC2n-EoVQg$-VPk7ha&K>D0{&amS5q+O8KI@Z+@_MAQ#MN|6jNo&SY-TZI!tHf*^~ER cyL4!ji%3ykIbW>$vYy|-T2LJ#-AOI0m -VQ_L~bWU$%Wl&*qbZ%vG1OosFY-MJ2PH$vo00jX8^=uPjBlbC`N(qzPM@Gr{imSMTSY5T*7C#t%#3&jH -F}tqlgo$^>um>@6G0l?pFt#Zz&53{9y57aQ#OZ(80SR(xXJ~XxWnpFj1pxx}Y!hN5_Bp3Y36tDMM#=e# -tGI($UA5U3KNx<*C>jc1tl4elKTgFI*|CjhfZ7VH>n$b={WmS6zD1_BFkVRCeCWpYk$WMu#Z -0ssVVZ*FA(00035b8l^B00jX70elBt06Rw7=FYk8Vad}gm+V(X#23g?#G%T#8*SXRQUS6KbYXtkv-?P -H+T_LVQ_L~bW&+&XmmnyVQyn+1_BIhWoC3vZ)9aiVRL8#^=uPjBlbC`N(qzPM@Gr{imSMTSY5T*7C#t% -#3&jHF}tqlgo$^>um>@6G0l?pFt#Zz&53{9y57aQ#OZ(84RUE`Xmn0*WMxQUb7%tfY!hN5_Bp3Y36tDM -M#=e#tGI($UA5U3KNx<*C>jbeyRPVjiFd`Y2QhLn&64&owka*miGSR>-o?7a>3`V@RCsSwWnpYZcyt5; -00nMuX>(-&1pxu?`80<*MY62ZUYgq2{$1`$+vZ&PJq -Y)^10taw%X>DP0c>?up6JjIwIj2eqliWu}$@z+_xPw?-wb>Rw7=FYk8VcxYK+Rkw`Mu(V -|7oQWGN(Z+AyvH&RuaL#D1_B3ga%pX0a(M#vY!hN5_Bp3Y36tDMM#=e#tGI($UA5U3KNx<*C>jdr -YCz3gCHcMLg#T%!5i+MiDyum>@6G0l?pFt#Zz +&53{9y57aQ#OZ(80SR(xXJ~XxWnpFj1pxx}Y!hN5_Bp3Y36tDMM#=e#tGI($UA5U3KNx<*C>jc1tl4el +KTgFI*|CjhfZ7VH>n$b={WmS6zD1_BFkVRCeCWpYk$WMu#Z0ssVVZ*FA(00035b8l^B00jX7 +0elBt06Rw7=FYk8Vad}gm+V(X#23g?#G%T#8*SXRQUS6KbYXtkv-?PH+T_LVQ_L~bW&+&XmmnyVQyn+ +1_BIhWoC3vZ)9aiVRL8#^=uPjBlbC`N(qzPM@Gr{imSMTSY5T*7C#t%#3&jHF}tqlgo$^>um>@6G0l?p +Ft#Zz&53{9y57aQ#OZ(84RUE`Xmn0*WMxQUb7%tfY!hN5_Bp3Y36tDMM#=e#tGI($UA5U3KNx<*C>jbe +yRPVjiFd`Y2QhLn&64&owka*miGSR>-o?7a>3`V@RCsSwWnpYZcyt5;00nMuX>(-&1pxu?`80<*MY62ZUYgq2{$1`$+vZ&PJqY)^10taw%X>DP0 +c>?up6JjIwIj2eqliWu}$@z+_xPw?-wb>Rw7=FYk8VcxYK+Rkw`Mu(V|7oQWGN(Z+AyvH&RuaL#D +1_B3ga%pX0a(M#vY!hN5_Bp3Y36tDMM#=e#tGI($UA5U3KNx<*C>jdrYCz3gCHcMLg#T%!5i+MiDy{MZ-bfLFbqC#o>4E?M+l67UG^w8*<_XZ#%uyqCj(P-WB~(HbYuYlVTK~nd#>M0oxa3K6eQdC+Gy3B!Si3U=l~Xz8i!-0pOiyx1DhWbtZ)0mnVRL8& 0RRU806-uB3qovfV{1rdVPs`;1_lRqWpZ@r3kIE(^qE$pAm5-)+r)@)O Yiwmga$#;`XaVj69%fNcXts12Tv2!Q3WLM|Qd_~KFccU7X-~cIbEFMMb#!%dWlUvZW>#f#1pxp60SZZO bY*gGVQf%q1pxv4qNggpk^aqssIi!kVeZ009V0WoKbyc~ENx0t#bqZE$jBb8}^60?I5NZ-bfLFbqC#o>4E?M+l67 -UG^w8*<_XZ#%uyqCt-#n(R;4&W&+>mb;*F>vukd;=m`ygb@x#_>`RmOO$KmvVryl200#g7Kp_ALOl4eZ009V0WoKbyc~ENx0t#bqZE$jBb8}^60)mO_O%DrjRIhYP1?a)oog)LL +Tw}}6rDvG=`c^zKYGH;V(R;4&W&+>mb;*F>vukd;=m`ygb@x#_>`RmOO$KmvVryl200#g7Kp_ALOl4DZ%0RR954NPxiYgB1%Wpi|4ZEytv000CA PjEwTWMu;}3UGCEXhL~(Wpgk93UGCEXhL~(WpgnB3UGCEXhL~(WpgqD3UGCEXhL~(WpgtF3UGCEXhL~( @@ -36,8 +36,8 @@ L&d6G@+l`%qd385?K@+fP1(-9sgE>i7rMzqbqG&&bZ~WaP-_JN0sNw;D!!5a&4Q@0n2=*4!cKOosx|T? 0000000960|Nj60000V8V{&P5bVy-yXaxZP2LJ#-6aWlUV{&P5bWn9-Yh`%_0Rbhe^|=xh7rLW4)L(lQ b*FJl;d*r#UC=Q#deq4+>4pVUWpPe#1pxp61PN1VXH#QxX>fD}0Rbhe^|=xh7rLW4)L(lQb*FJl;d*r# UC=Q#deq4+>4pnaX=i9*b7)3vVP^va17U1z0R(PuZe;=nb7^j8Y-IxrQ)y>tVRL9yd2nS00t9AkVP^sV -K5Bo+$Av>q{Ep{zvjDN1?3i()njY~0i|-KYDAhC!VQzVEZe>GZZct%)0?I5NZ-bfLFbqC#o>4E?M+l67 -UG^w8*<_XZ#%uyqCt-#n(R;4&W&+>mb;*F>vukd;=m`ygb@x#_>`RmOO$}6Ga6)onZewUjVRL8&0RRU8 +K5Bo+$Av>q{Ep{zvjDN1?3i()njY~0i|-KYDAhC!VQzVEZe>GZZct%)0)mO_O%DrjRIhYP1?a)oog)LL +Tw}}6rDvG=`c^zKYGH;V(R;4&W&+>mb;*F>vukd;=m`ygb@x#_>`RmOO$}6Ga6)onZewUjVRL8&0RRU8 06-uB2UKBjLvLhd0|pClb#rJ!d30rSGcq6vaCLKNL}7GcF-!??b#rJ$VRT_KO$l&yb7(|ibYV132y$g} WpZ|9WKafjWps6NZfXluVQ@@kVP;5Sb7%zt00#g7Kp+4ORAF#UWpZn5Wl&*sXaxZP2m!C_#huvwP)8k@ UBW>qE~}}GNQ&}gW5ITQQ3fKylGp$M00000004jh00000000YAVQ@}wWMxQUb7%zt00#g7Kp+4KRAF#a diff --git a/stl/Bitcoin@0.1.0.stl b/stl/Bitcoin@0.1.0.stl index 298e98d3..a2eee543 100644 Binary files a/stl/Bitcoin@0.1.0.stl and b/stl/Bitcoin@0.1.0.stl differ diff --git a/stl/Bitcoin@0.1.0.sty b/stl/Bitcoin@0.1.0.sty index 6d64784f..5e2f9631 100644 --- a/stl/Bitcoin@0.1.0.sty +++ b/stl/Bitcoin@0.1.0.sty @@ -1,5 +1,5 @@ {- - Id: stl:q7G95wzt-SxT2BMV-t~PokBt-wNYgZTu-AaYAtM3-rYjlzs4#agenda-wolf-pagoda + Id: stl:wUfEZiWN-tvMpLYq-~h1iQC3-bHNSjiW-h9d7O0t-i154uQ0#quiz-patent-exit Name: Bitcoin Version: 0.1.0 Description: Consensus library for bitcoin protocol @@ -11,7 +11,7 @@ @context typelib Bitcoin -import Std#ralph-blue-lucky +import Std#delete-roman-hair use Bool#oxygen-complex-duet diff --git a/stl/Seals.vesper b/stl/Seals.vesper index 2b400304..657446d5 100644 --- a/stl/Seals.vesper +++ b/stl/Seals.vesper @@ -7,7 +7,7 @@ Seals vesper lexicon=types+commitments -commitment SecretSeal, hasher SHA256, tagged urn:lnp-bp:seals:secret#2024-02-03 +commitment StrictHash, hasher SHA256, tagged urn:ubideco:strict-types:value-hash#2024-02-10 serialized TxoSealTapretProof rec TxoSealTapretProof