diff --git a/.travis/pin-vere-commit.txt b/.travis/pin-vere-commit.txt index a5dabb46a..de019f579 100644 --- a/.travis/pin-vere-commit.txt +++ b/.travis/pin-vere-commit.txt @@ -1 +1 @@ -6fca8527232cfe7ed73bbe70a5a8348ef8f57e0c \ No newline at end of file +8fc65462b8f5ee494a615bff9a922399a77b1419 \ No newline at end of file diff --git a/sys/vane/dill.hoon b/sys/vane/dill.hoon index d46728834..85013bfb1 100644 --- a/sys/vane/dill.hoon +++ b/sys/vane/dill.hoon @@ -74,8 +74,10 @@ spon=(unit ship) :: sponsor czar=(map ship [=life =pass]) :: galaxy table turf=(list (pair @ud (list @ta))) :: domains - :: XX wegh - == == :: + == :: + [%fake our=ship] :: boot fake + :: XX wegh :: + == :: ++ note :: out request $-> $% {$a note-ames} :: {$b note-behn} :: @@ -518,7 +520,7 @@ ((hard task:able) q.hic) == ?: ?=($boot -.q.hic) - ?> ?=(%dawn -.p.q.hic) + ?> ?=(?(%dawn %fake) -.p.q.hic) :: XX clamming - use +hard or something? :: XX just save default duct here? :: diff --git a/sys/vane/jael.hoon b/sys/vane/jael.hoon index 5c99b86f5..4540f405e 100644 --- a/sys/vane/jael.hoon +++ b/sys/vane/jael.hoon @@ -74,6 +74,7 @@ ++ state-absolute :: absolute urbit $: pry/(map ship (map ship safe)) :: promises eve=logs :: on-chain events + fak/_| :: fake keys == :: ++ state-eth-node :: node config + meta $: source=(each ship node-src) :: learning from @@ -684,6 +685,38 @@ == +>.$ :: + :: boot fake + :: {$fake our/ship} + :: + %fake + =* our our.tac + :: our private key, as a +tree of +rite + :: + :: Private key updates are disallowed for fake ships, + :: so we do this first. + :: + =/ cub (pit:nu:crub:crypto 512 our) + =/ rit (sy [%jewel (my [1 sec:ex:cub] ~)] ~) + =. +>.$ $(tac [%mint our our rit]) + :: set the fake bit + :: + =. fak.urb & + :: initialize other vanes per the usual procedure + :: + :: Except for ourselves! + :: + =. moz + %+ weld moz + ^- (list move) + :~ [hen %slip %d %init our] + [hen %give %init our] + [hen %slip %g %init our] + [hen %slip %e %init our] + [hen %slip %c %init our] + [hen %slip %a %init our] + == + +>.$ + :: :: remote update :: {$hail p/ship q/remote} :: @@ -702,6 +735,8 @@ :: {$mint p/ship q/safe} :: $mint + ~| %fake-jael + ?< fak.urb %+ cure our.tac abet:abet:(deal:(burb our.tac) p.tac [q.tac ~]) :: @@ -941,6 +976,8 @@ :: ++ pubs |= who=ship + ?: fak.urb + (pubs:fake who) %_ ..feed moz =/ pub (~(get by kyz.puk) who) ?~ pub moz @@ -968,6 +1005,17 @@ :: moz [[hen %give %vent &+eve] moz] yen.eth (~(put in yen.eth) hen) == + :: :: ++fake:feed:su + ++ fake :: fake subs and state + ?> fak.urb + |% + ++ pubs + |= who=ship + =/ cub (pit:nu:crub:crypto 512 who) + =/ pub [live=| life=1 (my [1 pub:ex:cub] ~)] + =. moz [[hen %give %pubs pub] moz] + (pubs:feel (my [who pub] ~)) + -- -- :: :: ++feel:su ++ feel :: update tracker diff --git a/sys/zuse.hoon b/sys/zuse.hoon index e7be05683..8d09b929e 100644 --- a/sys/zuse.hoon +++ b/sys/zuse.hoon @@ -2068,6 +2068,7 @@ czar=(map ship [=life =pass]) :: galaxy table turf=(list (pair @ud (list @ta))) :: domains == :: + [%fake our=ship] :: fake boot [%look our=ship src=(each ship purl:eyre)] :: set ethereum source [%mint our=ship p=ship q=safe] :: create rights [%move our=ship p=ship q=ship r=safe] :: transfer from=to