US10755241B2 — Hot wallet for holding bitcoin (Part 4 of 5)

Bitcoin Research — Law, Regulation, Markets & Origins (2026)

Patents

4

2015-03-17

Document text

Research, not advice. Part of the Bitcoin research archive (October 2026). Claims labelled unverified, contested or fringe are reported, not endorsed; statuses of bills and rules are as of the date checked. Government, court and patent records are public domain; the research notes are CC BY 4.0.

“
                                                                                                                                              out
                                                                                                                                              vault
                                                                                                                                              Vault
                                                                                                                                              "
                                                                                                                                              hasrbeen
                                                                                                                                              byaweald                                                                                                                                                                                                62
                                                                                                                                                                                                                                                                                                                                                      .
                                                                                                                                                                                                                                                                                                                                                      FIG
                                                                                                                                                                                          wrapiertchpodrcyoucangIfis,t.oeawvzaedl                     snSawuosmryptiJohn(,rIfyoucitochyges

    cCoFntoacitr@cn:o<i>bnasem.ceom                                                                                                                      JSohn.mSoit(h@)gmtailn.hcom                                                                                                         Simitmhe@gdm)i.ailt.eclomy
                                      SRmiteh@gpTo-:Johnmail.cyom
                                                                                          2014
                                                                                          ,
                                                                                          4
                                                                                          Sept
                                                                                          Date
                                                                                          :
                                                                                                 John.Smith:[email protected] coinbase   Hi
                                                                                                                                     John
                                                                                                                                     Smith
                                                                                                                                     ,                                                                                              wAitphdraowvale                                                                       regKinda,r s CToienhbasem

                                                                     out
                                                                     1
                                                                     of
                                                                     Myi:jBTC0raewceadl
                                                                     Vault
                                                                     iWSniutihbtd"                                                           My
                                                                                                                                             Wcirthedvault
                                                                                                                                             Vaultaby
                                                                                                                                             out
                                                                                                                                             BTC
                                                                                                                                             “
                                                                                                                                             10
                                                                                                                                             of
                                                                                                                                              "
                                                                                                                                              has
                                                                                                                                              beenraweadl                                                                                                                                                                                             FIG
                                                                                                                                                                                                                                                                                                                                                      .
                                                                                                                                                                                                                                                                                                                                                      61
                                                                                                                                                                                          Ifgthis
                                                                                                                                                                                          rwapeitcrhopdyou
                                                                                                                                                                                            ,anrtoc.aewzvaeld                                         snSawuosmryptiJohn(,rIfyoucitochyges

    cCoFntoacitr@nco:<>ibnase.mceo                                                                                                                           Smitmh@Johngi(m).aitl.hcom                                                                                                  Simitmhe@dgm)i.ailt.eclomy
                                      JoRhn.Semithp-To:@gmali.cyom
                                                                                          2014
                                                                                          Date
                                                                                          ,
                                                                                          4
                                                                                          :
                                                                                          Sept
                                                                                                 John.SmitTo:[email protected] coinbase    Hi
                                                                                                                                     John
                                                                                                                                     Smith
                                                                                                                                     ,                                                                                              wAitphdraowvale                                                                       regKinda,r sCToienhbasem
U.S. Patent                                                                 Aug. 25, 2020                                              Sheet 60 of 76                                                                                           US 10,755,241 B2

@L                                                           Ac<Backtount

                                                                                         Initiated Pending
                                                                                                           ©
                                                                                                           J oh n .S mi t h@ gm a il .c o m                [email protected] Wpaeirotiondg
                                                                                                                                                                                                                   Complete

                                                                                                                 WalMyet                                                                                                                                               FIG
                                                                                                                                                                                                                                                                       63
                                                                                                                                                                                                                                                                       .

608X64034666666   /h/cotinb:a...specsom FVTHavoieroiltewps   1
                                                             Vault
                                                             My
                                                                               WiRtehqdruaewaslt   10 .=BTCUSD0 0 VaultMy                 wiSJtnimhotdirahtweanshdl WiBpfntuvher10TsdoptrmaseCwnts   CSJamonsichtenhl
                                                                                                                                                                                                                              WCiathndrcaewal

                                             Edit                                                                                                                                                                                                  Cpyormopfluieltre
                                              File           Acounts        My 2
                                                                            Wallet
                                                                            1      Wallet
                                                                                   My 1   My 2
                                                                                          Vault Vault
                                                                                                My Sell
                                                                                                      Buy
                                                                                                      /
                                                                                                                                                                         Merchants Recurring Verification Settings
U.S. Patent                                                                              Aug. 25, 2020                                                                 Sheet 61 of 76                                                              US 10,755,241 B2

                                                                 GSenereatde
                                                               Key 340340                                         Algor:ithm SeedUseto GUensereatre Key
                                                           338 forUser
                                                                                                   GeKneratioyn
                        302      UResquesrtCVonatruoletd
                                                                                                                                                           324 Enter
                                                                                                                                                                       Password                                                                                                    I

DFUeisvr18iescrte                                                                                        322 PrivKey
                                                                                                             forate ShaKeyred                                                                                      GSencera316itipotn -342 346 DisplayPrivKeyateforUserKey
                                                                                                                                                                             EAnlcgroy:rpitihomn ShafromKeyandre
                                                                                                                                                                   326                 Gencerypated Pasword
                                                           320   GSeneratde ShaforKeyed 312 GeKneratioyn Algo:rithmtoUseSeed Generate SharKeyd                                                                                                                                             348
                                                                                                                                                                                                                                                                                           User
                                                                                                                                                                                                                                                                                           Set
                                                                                                                                                                                                                                                                                           Key

                                                                                                                                                                                                                                                               Key Key
                                                                                                                                                                                                                                               344 PSutbolriec User
                                                                                                                                                                                                                                                               for
                        304 InitKeyate
                                              Generation                                                            318
                                                                                                                                                                                         -3 0
                                                                                                                                                           328                                                                                              Encrypted
                                                                                                                                                                                                                                           334 Store Seedfor ShaKeyr d
                                                                                                                                                                                                                                                                                           ShaKeyet336red
                        306 GSfeneoratrde MasKeyter
                                                                                                                                                                                                                                               332 for
                                                                                                                                                                                                                                                   KeyPSutbolriec
CFSHoyimopsr14utsetrm                                                                                                                                                                                                                                    11 11          MSahsaKey11trerd   10

                                                                                                                                                                                                                                               312 for
                                                                                                                                                                                                                                                   Key
                                                                                                                                                                                                                                                      PSrtivoarte
                                                                                                                  308 toUseSeed
                                                                                                                                      Generate MasKeyt r                                                                                   310 PSutbolriec ??? MasForte Key
                                                                                                                                                                                                                                                                                           MasKeySet314er

                                                                                                                                                                                                                                                                    |
                                                                                                                                                                                                                                                                                                            64
                                                                                                                                                                                                                                                                                                            .
                                                                                                                                                                                                                                                                                                            FIG
U.S. Patent                                                                                                                                       Aug. 25 , 2020                                                      Sheet 62 of 76                                                                       US 10,755,241 B2

                                                                                                                                                                                                   Key Key
                                                                                                                                                                                               390 User
                                                                                                                                                                                                   for PErnitvaetre                                                         Verification   Scr372ipt
                                                                                                                                                                                                                                                                                                                                     SAilgno:artiutrhemPriKeySignwithva e
                                                                                    CIonlilet374Keycatioen
                                                                                                                      1            1             1        1           1                                                                                                                                                        392                                          tsriangdsnmeit   authorization
 DFUeisvr18iescrte                                                                                                                        346   DisplayedPrivKeyate   for
                                                                                                                                                                      User
                                                                                                                                                                      Key                      376 Inter:face Enter
                                                                                                                                                                                                                            Pasword
                       360   BTRUriesatqnciuosenaiscgnt CAVUodnatsrf-uoelsertd
                                                                                                                                                                                                                                                                                                                                     SAilgnoar:tiurhemPriKeyvSignwitha e
                                                                                                                  334
                                                                                                                  Set
                                                                                                                  Key
                                                                                                                  User                                                                            374        Receive ESnceryeptde           -N
                                                                                                                                                                                                                                                                    Decryption EDnecrypytpetd
                                                                                                                                                                                                                                                              378 Algor:ithm obtSeedtoain PrivKeyate
                                                                                                                                                                                                                                                                                                                               380                                      tsrianandgsmeit      authorization
                                                                                                                                                          Key Key
                                                                                                                                          344 PSutbolriec User
                                                                                                                                                          for                            37B

                                                  364
                                                                            Authorization                                              334 Store     Encrypted   forSeed
                                                                                                                                                                           SharKey11ed                         N
                                                                                                                                                                                                                                                   Verification Signature
                                                                                                                                                                                                                                        394 Mod:ule Verify PubslincgKey 396                                          Correct         Y
                                                                                                                                                                                                                                                                                                                                                             398 Tranduetosact SbigeniatnurgeCor ect
                                                                                                                  ShaKeyet336red
                                                                                                                                          332 for
                                                                                                                                              Key
CFSHoyimpsr14utsetrm
                                                                                                             Fm
                                                                                                                         Il
                                                                                                                                                PSrutibovlaritec MSKahesytreurd                 Verification Signature
                                                                                                                                                                                          382 Mod:ule Verify Pusblincg Key 384                                             Corect                  Y   386 Trandue
                                                                                                                                                                                                                                                                                                            tosact   SbigenaitnurgeCor ect 370 required                               out
                                                                                                                                                                                                                                                                                                                                                                                      2
                                                                                                                                                                                                                                                                                                                                                                                      of
                                                                                                                                                                                                                                                                                                                                                                                      3

                       362
                                 TPraoncsaecstiorn                                                                                        312 for
                                                                                                                                              Key
                                                                                                                  Mas314SetKeyer
                                                                                                                                       310 PSutbolriec Key MasForte Key
                                                                                                                                                                                                   366 PrivKey
                                                                                                                                                                                                       Signwitha e                                                  368
                                                                                                                                                                                                                                                                           Transact
                                                                                                                                                                                                                                                                                                                                                                                                       FIG
                                                                                                                                                                                                                                                                                                                                                                                                       .
                                                                                                                                                                                                                                                                                                                                                                                                       65
                                                                                                                                                                                                                                      400
                                                                                                                                                                                                                                            Authorize Transaction
U.S. Patent                               Aug. 25 , 2020                Sheet 63 of 76              US 10,755,241 B2

                                              User PrivKeyate 420      M0M1
                       UserKey Se408d
                                                                       /1OM
                                                 PUusbleirc 418Key     /
                                                                       M

                                              Shared PrivKeyate 416 M0M1
      GAe4dner0aetso2r ShaKeyred Se406d                                                                   FIG
                                                                                                          .
                                                                                                          66
                                                                       OM/1
                                              Shared   PublKeyic 414
                                                                       /
                                                                       M
                                                                                         Addr1ess

                                                                       1
                                                                       /
                                                                       M

                                              Master PrivKeyate 412    MO                Ad roes
                       MastKeyr Se404d
                                              Master PublKeyic 410 M0M1
U.S. Patent                                                                         Aug. 25 , 2020                                                                              Sheet 64 of 76                                                                                      US 10,755,241 B2

                                                                                                                                                                                                 ARec eoID444iuvnetr
                                                                                                                                                                                                                       430URLPostBlog
      CFHSoiympsr14utsetrm                                                                                           EGCmenboerdateodr
                                                    RA4ece3oiuvne4tr Det442aLogin-ls RAeceoID444-iuvnetr 448 PostBlog URL GBeunetIDandrtatonr 438
                                                                                                                                                                              462
                                                                                                                                                                              www
                                                                                                                                                                              -
                                                                                                                                                                                                                                                                       But460IDon             BA5idt0croeis2n BAidtcr510oeisn
                                                                                                                                                                                                                 But460IDon 458 ButIDon                                             480Bits

SPCaormtpunter ys422tem 440 ACcreoautnet 446 AIcnoLogutnot EntURLBlogPoster                           452      ECm4boe5d e0d -B430URLPostlog -AR4ceceIDoiuvne4tr C-aStl545areturp -B430URLPostlog EC4mboe5d e0d -B430URLPostlog -A4RceceoIDiuvn4etr C-Satla454rteurp
                                                                                                                                                                       428
                                                                                                                                                                       Post
                                                                                                                                                                       Blog
                                                                PUJI

RCeocmepiuvter Sys424tem                                                            Receiver B4ro2wse6r                                                             432          Create PostBlog                                        456     Embed ECmboeded
                                                                                                                                                                                                                                                                                                                                FIG
                                                                                                                                                                                                                                                                                                                                67
                                                                                                                                                                                                                                                                                                                                .
U.S. Patent                                                                                       Aug. 25 , 2020                                                                          Sheet 65 of 76                                                                                               US 10,755,241 B2

                                                                                                                                                                                                                                                                                                                                                                      1   j

                                                                                                                                                                                                                                                                                                                                510BA5idt1cr0oeis1n Signed-In
                                                                                                                                                                                                                                                                                                                                Andres
                                                                                                                                                                                                                                                                                                                                Bison
                                                                                                                 454           RCeotrkievse                                                                                                                                                     CS4oen7kdie2rs Buton
                                                                                                                                                                                                                                                                                                               B260_nButID460ton                                      Co549kL.ie

                                                                                                                                                                                                                                                                                   ButID460on             491 BSutoIDtroen
SCoemnpduterSys464tem                                                           -ARceceoID444iuvnert CStal454rlteurp                                                                                Dis490play
                                                                                                                                                                                                                                            Bits480
                                                               E
                                                               C
                                                               4 mbo
                                                                   5e d 0
                                                                        e d
                                                -B436URLPostlog -B430URLPostlog                                                                                           -A4RcecoIDeiuvn4etr
                                                                                                                                                                                                                                                                             Init492iate Secsripont 486
                                  428PostBlog                                                                        474                                                                                               428
                                                                                                                                                                                                                       Post
                                                                                                                                                                                                                       Blog But484on
                                                                                                                                              Callrtup -B430
                                                                                                                                              Sta:     URLPostlog
                                                                                                                                                      -4Co7ki2es

                                                        RAeceoID444iuvnetr                                 478 ButIDon    Retrieve                CStarltupR4esp7ond6er                                483 RSCetsap:roltnuspe                         -Scesr486ipont -BuIDt460on
                                                                               430URLPostBlog
     CFHSoiympsr14utsetrm                                                                                                                                                                                                       -Bu484t on -B480its
                            466
                                  Download                                                                                                                                   482 RBetiritevse ButIDForon
                                                                                                                                                                                                                                                                                                    But460IDon                   BA5idt0croeis2ns BAidtcrmed510oisn
                                                                        ButID460on                                                                                                                                                                                                                                    480Bits

                                                                                                                                                                                                                                                                                                                                                                      68
                                                                                                                                                                                                                                                                                                                                                                      FIG
                                                                                                                                                                                                                                                                                                                                                                      .
CPoamrptunter Sys422tem                                                      ECm4boe5d e0d -AR4ceceIDoiuvne4tr
                                                                                         430
                                                                                         URL
                                                                                         Post
                                                                                         Blog
                                                                                         -                       C-Satla454rteurp
                                   428PostBlog430URLPostBlog-
U.S. Patent                           Aug. 25 , 2020                   Sheet 66 of 76                             US 10,755,241 B2

         First Host Computer System 14                                                         Sender Computer
                                                                                                 System 464

                                                                                          Display 490
   Button ID 460
                                                                                  Blog Post 428
   Bits 480
                                                                                      Button 484       Bits 480
   Bitcoin Address 502
                                                                                  492 Initiate        Button ID 460
   Bitcoin Address 510
                                                                                 Session Script
              508                               500                                      486
      Store Bitcoin                        Checks Data
  Address and Button ID                    for Button ID
                                                                     496                             494
                                                                Session Call :                 Retrieve Cookies
       Bitcoin                                                  -Cookies
    Address and                             Session
   Generator 506                       Responder 498                                                       Sender Cookies 472
                                                                                                                           Store Button ID
                                                                                                               Button ID 460
             504                                                                                                  Bitcoin Address 510
          Was Bitcoin
            Address                           516                                                              Signed-In
          Received ?                 Signed Into Sender                                                     L Cookie 549
                                     Account ( singed - in
                    Y                 cookie found ) ?
                512                                                                     514
               Bitcoin                                                   -Store Bitcoin Address                              548
              Address                                                            and Button ID                           Store Cookie
                                       N
                                                                                      Listen Code        3rd Party Pmt
                                                                                           524           Script 526
                                                                                                 Display 490
                        518                                                                  Sign - In Panel 520
                        Send                                                              Sign In         Third Party
                        -Sign - In Panel 520                                              Button       Wallet Button
                        -Sign - In Script 522                                              530              544
                        -Listen Code 524
                        - 3rd Party Pmt Script 526                                       QR Code          Bitcoin
                        -Pull Code 528                                                     546         Address 510
                              Sender Account 536                            532                 Sign -In Script
                              - Login Details 534                          Initiate                  522
                                                                                                           Pull Code
                                                       540                                                     528
                                                      Sign In
 FIG . 69
U.S. Patent                        Aug. 25 , 2020      Sheet 67 of 76                            US 10,755,241 B2

                                                                          Sender Computer
      First Host Computer System 14                                             System 464

        Button ID 460                                                     Display 490
        Bits 480                                              Blog Post 428
        Bitcoin Address 502                                     Button 484           Bits 480

        Bitcoin Address 510                                  492 Initiate           Button ID 460
                                                           Session Script
                       Receiver Account 434                         486
                       - Login Details 442
                       - Receiver Account ID 444
                                Transfer
                          Sender Account 536
                          - Login Details 534                                       Sender Cookies 472
                                                                                      Button ID 460

                                        516                                               Bitcoin Address 510 |
                                Signed Into Sender                                           Bits 480
                                Account (singed- in
                                  cookie found ) ?                                           Signed - In
                                                                                      L Cookie 549
                   Y
                          550                                        ww
                           Send                                Listen Code              3rd Party Pmt
                          -Signed - In Panel 552                   524                    Script 526
                          -Listen Code 524
                          -3rd Party Pmt Script 526                           Display 490                            566
                          -Pull Code 528                                  Signed- In Panel 520                    Update Bits
                          -Host Acct Pmt Script 554                 Host Acc .        Third Party
                                                                     Button           Wallet Button
                                                                       530                 544
            561                                                     QR Code              Bitcoin
  Pay Using Sender Account                                                546         Address 510
                                                          560
                   564                       154         Initiate
                                       Transaction
            Update Bits                 Processor           Host Acct Pmt                Pull Code
                                                               Script 554                   528

                                         566
                                  Pull New Bit Count                                                       FIG . 70
U.S. Patent                   Aug. 25 , 2020                Sheet 68 of 76                          US 10,755,241 B2

                          First Host Computer System 14                        Sender Computer
                                                                                 System 464

                                                                                    Display 490
                                                                       Blog Post 428
                                                                        Button 484           Bits 480

                                                                      492 Initiate          Button ID 460
                              Button ID 460
                                                                     Session Script
                              Bits 480                                        486
                              Bitcoin Address 502
                              Bitcoin Address 510                             Sender Cookies 472
                                                                                    Button ID 460
                                 572
                              Update Bits                                             Bitcoin Address 510 I
                                                                                                                           566
                                                                                y Bits 480                          Update Bits
                                            568                                        Signed -In
                                         Bit Updater                            i Cookie 549
                                                             572
                                                   Push Update Notification
                 570                        567
               Check                     Block Chain
            Block Chain                    Checker                   Listen Code             3rd Party Pmt
                                                                         524                  Script 526

       12
                                                                                Display 490                      560
                                                                                                                Initiate
 Bitcoin Network                                                            Signed - In Panel xxx
                                                                         Host Acc . Third Party
      564                                                                 Button           Wallet Button
  Broadcast to                                                             556                  544
  Block Chain                                                            QR Code              Bitcoin
      562                                                                     546          Address 510
   Third Party
  Transaction
   Processor
                                                                   Host Acct Pmt              Pull Code
                                                                     Script 554                  528
                                    574
                             Pull New Bit Count
                                                                                                              FIG . 71
U.S. Patent                              Aug. 25, 2020                                       Sheet 69 of 76                                              US 10,755,241 B2

                             WalAet                         WalBet   WalCet                          EUxcshaengre 618        $
                                                                                                                             +
                                                                                                                             10          10
                                                                                                                                         $
                                                                                                                                         +

                             Led620ger
Sys600tem

                                                                                                                        $
                                                                                                                        +
                                                                                                                        10                                                                               10
                                                                                                                                                                                                         $
                                                                                                                                                                                                         +

                                                                              Exch616ange                        User
                                                                                                                 A                B
                                                                                                                                  User                User
                                                                                                                                                      C
                                                                                                                                                                                                         OBTC
                                                                                                                                                                                    ExchangeDatabase   612

                                                                                                                                  MCloedaurilneg614
                                                                                             GFeneratodr 608
            User Computer                                                                                                                                    MPuilpteiclaisnte610
                                                                                             OGartdewary 604
                                                                                                                                                                                                                FIG
                                                                                                                                                                                                                .
                                                                                                                                                                                                                72
            User CompButer                In6ter0fnaec2te                                                                          MEantgchineg606
            User CompAuter
                                                                                            OGartdewary604
U.S. Patent                                           Aug. 25, 2020                                                                     Sheet 70 of 76                                                                   US 10,755,241 B2

                                                      WalAet                                  WalBet                  WalCet                             EUxcshaengre618                        10
                                                                                                                                                                                                $
                                                                                                                                                                                                +           +
                                                                                                                                                                                                            $
                                                                                                                                                                                                            10

                                                      Led620ger
         Sys600tem                                                                                                                                 TCorht2b-oeasclks   BPreocfeodrineg
                                                                                                   CRerhqo2ae-usckt
                                                                                                                                                                                           10
                                                                                                                                                                                           $
                                                                                                                                                                                           +                                                         10
                                                                                                                                                                                                                                                     $
                                                                                                                                                                                                                                                     +

                                                                                                                               Exch616ange                                          User
                                                                                                                                                                                    A                User
                                                                                                                                                                                                     B                   C
                                                                                                                                                                                                                         User
                                                                                                                                                                                                                                                     +OBTC

                                                                                                                                                                                                                                ExchangeDatabase   612

                                                                                                                                                                                                     MColedaurlineg614
                                                                                    TRreaqnu1bsefsert
                                                                                                                                              GFeneraetodr 608
                 User Computer
                                                                                                                                             OGartdewary604
                 User CompButer   TRreaqnu1asefsert               I6nte0rfnae2cte                                                                                                                     MEantcghinge 606                                       FIG
                                                                                                                                                                                                                                                             73a
                                                                                                                                                                                                                                                             .

Tran-Insfer User CompAuter                                                                                                                   OGartdewary 604
U.S. Patent                              Aug. 25, 2020                                          Sheet 71 of 76                                                   US 10,755,241 B2

                             WalAet                         WalBet   WalCet                             EUxcshaengre 618             10
                                                                                                                                     $+
                                                                                                                                     +  20
                                                                                                                                        $                30
                                                                                                                                                         $
                                                                                                                                                         +

                             Led620ger                                 20
                                                                       $

Sys600tem
                                                                              Tran3sfer                                                 Upd46ate
                                                                                                                           Upd4ate
                                                                                                                               10
                                                                                                                               $
                                                                                                                               +                   20
                                                                                                                                                   $
                                                                                                                                                   +                                      $
                                                                                                                                                                                          30
                                                                                                                                                                                          +

                                                                                 Exch616ange                         User
                                                                                                                     A                  B
                                                                                                                                        User                  User
                                                                                                                                                              C
                                                                                                                                                                                          +OBTC

                                                                                                                                                                     ExchangeDatabase   612

                                                                                                                                         MCloedaurilneg614
                                                                                                GFeneratodr 608
            User Computer
                                                                                                OGartdewary 604
            User CompButer                In6ter0fnaec2te                                                                                MEantgchineg 606                                         73b
                                                                                                                                                                                                  .
                                                                                                                                                                                                  FIG

            User CompAuter
                                                                                               OGartdewary604
U.S. Patent                              Aug. 25, 2020                                       Sheet 72 of 76                                                 US 10,755,241 B2

                             WalAet                         WalBet   WalCet                          EUxcshaengre 618        10 20
                                                                                                                             $
                                                                                                                             +  $
                                                                                                                                +                   30
                                                                                                                                                    $
                                                                                                                                                    +

                                                                                                                             +5BTC NRW +5BTC
                             Led620ger
Sys600tem

                                                                                                                        $
                                                                                                                        +
                                                                                                                        10                  $
                                                                                                                                            +
                                                                                                                                            20                                               30
                                                                                                                                                                                             +
                                                                                                                                                                                             $

                                                                              Exch616ange                        User
                                                                                                                 A                 B
                                                                                                                                   User                  User
                                                                                                                                                         C
                                                                                                                                                                +5BTC                        +5BTC

                                                                                                                                                                        ExchangeDatabase   612

                                                                                                                                    MCloedaurilneg614
                                                                                             GFeneratodr 608
            User Computer
                                                                                             OGartdewary 604
            User CompButer                I6nte0rfnae2cte                                                                           MEantgchineg 606                                                 FIG
                                                                                                                                                                                                     73C
                                                                                                                                                                                                     .

            User CompAuter
                                                                                            OGartdewary604
U.S. Patent                                       Aug. 25, 2020                                                                              Sheet 73 of 76                                                            US 10,755,241 B2

                                                   WalAet                                        WalBet                   WalCet                         UExscheanrge618             $ 20
                                                                                                                                                                                     10
                                                                                                                                                                                     +  $
                                                                                                                                                                                        +                      30
                                                                                                                                                                                                               $
                                                                                                                                                                                                               +

                                                                                                                                                                                     +5BTC +5BTC
                                                   Led620ger
        Sys600tem

                                                                                                                                                                            10
                                                                                                                                                                            +
                                                                                                                                                                            $                         20
                                                                                                                                                                                                      +
                                                                                                                                                                                                      $

                                                                                                                                   E6xch1an6ge                       User
                                                                                                                                                                     A           10
                                                                                                                                                                                 $
                                                                                                                                                                                 -
                                                                                                                                                                                 2BTC
                                                                                                                                                                                 +            User
                                                                                                                                                                                              B                       User
                                                                                                                                                                                                                      C
                                                                                                                                                                                                                                               $
                                                                                                                                                                                                                                               10
                                                                                                                                                                                                                                               +
                                                                                                                                                                                                                                               -2BTC                             5BTC
                                                                                                                                                                                                                                                                                 +
                                                                                                                                                                                                                                                                                 $
                                                                                                                                                                                                                                                                                 30

                                                                                                                                                                                                                                  5BTC+

                                                                                                                                                                                    Upd9ate                            Upd9bate
                                                                                                                                                                                                                                                           Exchange Database   612

                                                                                                                                                                                              MCloedaurilneg 604
                                                                                              MOaftSellc,
                                                                                               )ehres                                             GeFneraetodr 608
                                                                                                                                                                                                                    M-ult7icast Mu-lt7icabst MPu6ilptei1lcians0et
                    User Computer                              IntOefr6028fnFeed(Buy,acters
                                     5b Sell
                                        BTC each
                                        2    5
                                             $
                                             @                                                                                                   OGartdewary604
                    User CompButer                                                                                                                                                             MEantcghinge 606                                                                         FIG
                                                                                                                                                                                                                                                                                        .
                                                                                                                                                                                                                                                                                        73d
                                                                                                            OfSell
                                                                                                            andBuy5cers                                                           OfSell
                                                                                                                                                                                  and
                                                                                                                                                                                  Buy
                                                                                                                                                                                  5ders

Trading User CompAuter
                                     5a BTC
                                        2
                                        Buyeach
                                            5
                                            @
                                            $
                                                                                                                                                 OGartdewary 604                                                                            each User
                                                                                                                                                                                                                                            User
                                                                                                                                                                                                                                            BTC
                                                                                                                                                                                                                                            Buy
                                                                                                                                                                                                                                            5
                                                                                                                                                                                                                                            2
                                                                                                                                                                                                                                            :
                                                                                                                                                                                                                                            A
                                                                                                                                                                                                                                            @
                                                                                                                                                                                                                                            $    :
                                                                                                                                                                                                                                                 C
                                                                                                                                                                                                                                                 each
                                                                                                                                                                                                                                                 Sell
                                                                                                                                                                                                                                                 BTC
                                                                                                                                                                                                                                                 5
                                                                                                                                                                                                                                                 $
                                                                                                                                                                                                                                                 @
                                                                                                                                                                                                                                                 2

                                                                                                                                                                                                                                Match
                                                                                                                                                                                                                                6
                                                                                                                                                                                                                                :
U.S. Patent                                                 Aug. 25, 2020                                                                         Sheet 74 of 76                                                                         US 10,755,241 B2

                                                            WalAet                                    WalBet                    WalCet                              EUxcshaengre618                           10 +
                                                                                                                                                                                                              $
                                                                                                                                                                                                              +  20
                                                                                                                                                                                                                 $                 30
                                                                                                                                                                                                                                   $
                                                                                                                                                                                                                                   +

                                                                                                                                                                                                              +5BTC +5BTC
                                                            Led620ger
             Sys600tem                                                                                                                                       TCorhtoe11b-asclks   BPreocfeodrineg
                                                                                                            CRerhq11a-oeusckt
                                                                                                                                                                                                      10
                                                                                                                                                                                                      $
                                                                                                                                                                                                      +                    20
                                                                                                                                                                                                                           $
                                                                                                                                                                                                                           +                           10
                                                                                                                                                                                                                                                       +
                                                                                                                                                                                                                                                       $                            30
                                                                                                                                                                                                                                                                                    +
                                                                                                                                                                                                                                                                                    $

                                                                                                                                         Exch616ange                                           A
                                                                                                                                                                                               User        10
                                                                                                                                                                                                           -
                                                                                                                                                                                                           2BTC
                                                                                                                                                                                                           +
                                                                                                                                                                                                           $      User
                                                                                                                                                                                                                  B                     C
                                                                                                                                                                                                                                        User
                                                                                                                                                                                                                                               5BTC+   -2BTC                        5BTC+

                                                                                                                                                                                                                                                               ExchangeDatabase   612

                                                                                                                                                                                                                   MCloedaurilneg614
                                                                                          WRi1ethqdu0raewsablt
                                                                                                                                                        GFeneraetodr 608
                     User Computer
                                                                                                                                                       OGartdewary 604
                     User CompButer
                                      WRi1tehqdu0raewsalt               I6nte0rfnae2cte                                                                                                                            MEantcghinge606                                                          FIG
                                                                                                                                                                                                                                                                                            .
                                                                                                                                                                                                                                                                                            73e

                                                                                                                                                       OGartdewary 604
Withdrawal           User CompAuter
U.S. Patent                              Aug. 25, 2020                                           Sheet 75 of 76                                                  US 10,755,241 B2

                             WalAet                         WalBet   WalCet                              EUxcshaengre 618           10
                                                                                                                                    $ 20
                                                                                                                                    +  $ 10
                                                                                                                                       + -
                                                                                                                                         $                     20
                                                                                                                                                               $
                                                                                                                                                               +

                                                                                                                                    5BTC+ MNRW 5BTC+
                                                                                           10
                                                                                           $
                             Led620ger
Sys600tem                                                                                                                                    Upd13bate
                                                                              Tran12sfer
                                                                                                                                    Upd13ated
                                                                                                                            10
                                                                                                                            $
                                                                                                                            +                     $
                                                                                                                                                  +
                                                                                                                                                  20                                  10
                                                                                                                                                                                      $
                                                                                                                                                                                      -                    20
                                                                                                                                                                                                           +
                                                                                                                                                                                                           $

                                                                                Exch616ange                          User
                                                                                                                     A           10
                                                                                                                                 -
                                                                                                                                 $
                                                                                                                                 2BTC
                                                                                                                                 +        B
                                                                                                                                          User                 User
                                                                                                                                                               C
                                                                                                                                                                              10
                                                                                                                                                                              +
                                                                                                                                                                              $
                                                                                                                                                                              -2BTC

                                                                                                                                                                      +5BTC                                +5BTC

                                                                                                                                                                                      ExchangeDatabase   612

                                                                                                                                           MCloedaurilneg614
                                                                                                 GFeneratodr 608
            User Computer
                                                                                                 OGartdewary 604
            User CompButer                In6ter0fnaec2te                                                                                  MEantgchineg 606                                                        73f
                                                                                                                                                                                                                   FIG
                                                                                                                                                                                                                   .

            User CompAuter
                                                                                                OGartdewary604
U.S. Patent       Aug. 25 , 2020           Sheet 76 of 76        US 10,755,241 B2
     900
                         930                                            938

           PROCESSOR
                                                       VIDEO DISPLAY
       INSTRUCTIONS
                               952
                         932                                            940

       MAIN MEMORY
                                                       ALPHA -NUMERIC
       INSTRUCTIONS                                     INPUT DEVICE
                               952
                         934                  936                       942

      STATIC MEMORY                                  CURSOR CONTROL
                                                         DEVICE

                         948                                            944
                                                        DRIVE UNIT
         NETWORK
                                     BUS                                950
     INTERFACE DEVICE                                   MACHINE
                                                        READABLE
                                                         MEDIUM
                                                                         952
                                                      INSTRUCTIONS
                          954
                                                                        946

               NETWORK
                                                          SIGNAL
                                                        GENERATION
                                                            DEVICE

                                 FIG . 74
                                                    US 10,755,241 B2
                    1                                                                              2
      HOT WALLET FOR HOLDING BITCOIN                                do not provide a solution for maintaining security of Bitcoin
                                                                    addresses while still allowing the users to use Bitcoin
           CROSS - REFERENCE TO RELATED                             addresses within their wallets for transacting with other
                    APPLICATIONS                                    users .
                                                                  5   A merchant computer system often has an online store and
  This patent application claims priority from U.S. Provi           a website. A customer at a customer computer system may
sional Patent Application No. 61 / 954,434 , filed on Mar. 17 , use a browser to access the online store via the website .
2014 ; U.S. Provisional Patent Application No. 61 / 990,017 , Items are displayed for purchase in a local currency .
filed on May 7 , 2014 ; U.S. Provisional Patent Application Exchange rate between bitcoin and local currency changes
No. 62 /042,676 , filed on Aug. 27 , 2014 ; U.S. Provisional 10 over short periods of time . The price in local currency may
Patent Application No. 62/ 056,100 , filed on Sep. 26 , 2014 ; thus change between the time that the local currency is
U.S. Provisional Patent Application No. 62 / 086,669 , filed on displayed to the customer and the time that the customer
Dec. 2014 and U.S. Provisional Patent Application No. decides to make the purchase. As a result , the customer or
62 /099,992 , filed on Jan. 5 , 2015 , each of which is incor the merchant may incur a loss in local currency. The
porated herein by reference in its entirety.                   15 customer or merchant may then be reluctant to purchase
                                                                  using bitcoin .
         BACKGROUND OF THE INVENTION                                 In order for a user to access their wallet, the user may log
                                                                  into their account through the website using a user name and
                    1 ) . Field of the Invention                  password . If the user name and password become compro
                                                               20 mised then it may be possible for bitcoin to be stolen out of
   This invention relates to a computer system and method the wallet. Users may therefore be reluctant to store bitcoin
for transacting bitcoin .                                         in their wallets without any additional security features .
                                                                     Bitcoin transacting requires the use of a public key and a
                2 ) . Discussion of Related Art                   private key. The private key is used to sign an authorization
                                                               25 and the public key is used to verify the signature. Some users
   The Bitcoin network is a peer-to - peer payment system may require control over their private keys in order to ensure
having a plurality of nodes that are connected to one another. to such users that bitcoin transacting will not take place
Bitcoin exchange computer systems allow for users to without their express authorization .
exchange local currency into or out of bitcoin . Users send          Content creators often put a lot of time and energy into
payments by broadcasting digitally signed messages to the 30 their blog posts . These efforts are rarely rewarded because
Bitcoin network . Users may, for example, send and receive          efficient technology does not exist for rewarding bloggers
payments using mobile applications on mobile devices, for their efforts.
client software or a web browser.
   Transactions do not explicitly identify the payor and           SUMMARY OF THE INVENTION
payee by name or wallet. Instead , a bitcoin transaction 35
transfers ownership to a new address, referred to as a            The invention provides a host computer system for trans
“ Bitcoin address ” . The Bitcoin address is derived from the acting bitcoin including a processor, a network interface
public portion of one or more cryptographic key pairs . The device connected to the processor, a computer readable
private portion of a key pair is not disclosed to the public . medium connected to the processor, a data store on the
To send bitcoin sent to an address, a user broadcasts a 40 computer readable medium and a set of instructions on the
payment message that is digitally signed with the associated computer readable medium that are executable by the pro
private key.                                                   cessor. The set of instructions includes a wallet establish
   Participants known as “ miners ” miner computer sys ment module, a login module , a hosted email module and a
tems verify and timestamp transactions into a shared public wallet management. The wallet establishment module estab
database called a “ block chain ” . The miners are rewarded 45 lishes a first wallet in the data store , stores login details for
with transaction fees and newly minted bitcoin for their the first wallet and storing a value representative of an
effort. The miner computer systems are specialized comput amount of bitcoin held by the first wallet. The login module
ers that append blocks of transactions to the block chain . receives login credentials over the network interface device
Solving a cryptographic puzzle required to append a block for the first wallet from a first user device, verifies whether
carries a reward plus fees included in transactions in the 50 the login credentials match the login details for the first
block .                                                       wallet , and if the login credentials match the login details
   Host computer systems reside at various nodes and may then logs the first user device into the first wallet . The hosted
host accounts or “ wallets ” that allow users to make and           email module , if the first user device is logged into the
accept payments using bitcoin . The wallet stores the public        wallet , permits transmission of an email by a user of the first
key of the Bitcoin address and its associated private key. 55 user device to an email address of a second user device. The
   The transfer of bitcoin may be an onerous task if the entire     wallet management module , in response to the transmission
public key of the Bitcoin address has to be copied and              of the email , records a transfer in the first wallet for an
transmitted.                                                        amount of bitcoin from the first wallet to a second wallet
   When a transaction is made between two wallets at the            identified by the email address .
same or different host computer systems , the transaction is 60        The invention also provides a method of transacting
broadcast to the Bitcoin network for block chain verifica           bitcoin . A processor establishes a first wallet in a data store
tion . Such a block chain verification may take a long time to      connected to the processor. The processor stores login
complete. Miner fees are also associated with such a transfer   details for the first wallet. The processor stores a value
and have to be paid by a host computer system requesting            representative of an amount of bitcoin held by the first
the transfer.                                                65 wallet . The processor receives login credentials for the first
   It may be a security concern for users that their Bitcoin wallet from a first user device . The processor verifies
addressesmay be stolen from their wallets . Existing systems    whether the login credentials match the login details for the
                                                      US 10,755,241 B2
                               3                                                                    4
first wallet . The processor, if the login credentials match the    transfer instruction for an amount of bitcoin from the first
login details then , logs the first user device into the first      wallet and an identifier of the second wallet . The processor,
wallet. The processor, if the first user device is logged into      in response to the first transfer instruction, records a transfer
the wallet , permits transmission of an email by a user to the in the first wallet for the amount of bitcoin in the first transfer
first user device to an email address of a second user device 5 instruction out of the first wallet and a transfer in the second
and in response to the transmission of the email. The wallet , identified by the identifier of the second wallet, for
processor records a transfer in the first wallet for an amount the amount of bitcoin in the first transfer instruction into the
of bitcoin from the first wallet to a second wallet identified second wallet without paying a miner's fee for the first
by the email address.                                           transfer. The processor receives a second transfer instruction
   The invention further provides a non -transitory computer- 10 for an amount of bitcoin from the first wallet and a bitcoin
readable medium having stored thereon a set of instructions      address associated with a second node of the bitcoin net
that are executable by a processor to carry out a method of work . The processor, in response to the second transfer
transacting bitcoin . The processor establishes a first wallet in   instruction records a transfer in the first wallet for the
a data store connected to the processor. The processor stores       amount of bitcoin in the second transfer instruction out of
login details for the first wallet . The processor stores a value 15 the first wallet , broadcasts a message to the Bitcoin network,
representative of an amount of bitcoin held by the first             including to the second node , to record a transfer associated
wallet. The processor receives login credentials for the first       with the bitcoin address associated with the second node, for
wallet from a first user device . The processor verifies the amount of bitcoin in the second transfer instruction and
whether the login credentials match the login details for the pays a miner's fee for the second transfer.
first wallet . The processor, if the login credentials match the 20 The invention further provides a non -transitory computer
login details then , logs the first user device into the first readable medium having stored thereon a set of instructions
wallet. The processor, if the first user device is logged into that are executable by a processor of a first host computer
the wallet , permits transmission of an email by a user to the system at a first node of the Bitcoin network to carry out a
first user device to an email address of a second user device       method of transacting bitcoin . The processor establishes first
and in response to the transmission of the email. The 25 and second wallets in a data store connected to the processor.
processor records a transfer in the first wallet for an amount The processor stores a value representative of an amount of
of bitcoin from the first wallet to a second wallet identified bitcoin held by the first wallet. The processor receives a first
by the email address .                                         transfer instruction for an amount of bitcoin from the first
   The invention further provides a first host computer wallet and an identifier of the second wallet . The processor,
system for transacting bitcoin including a processor at a first 30 in response to the first transfer instruction, records a transfer
node of the Bitcoin network , a network interface device            in the first wallet for the amount of bitcoin in the first transfer
connected to the processor, a computer readable medium              instruction out of the first wallet and a transfer in the second
connected      the processor, a data store on the computer                  identified by the identifier of the second wallet, for
readable medium and a set of instructions on the computer           the amount of bitcoin in the first transfer instruction into the
readable medium that are executable by the processor. The 35 second wallet without paying a miner's fee for the first
set of instructions includes a wallet establishment module . transfer. The processor receives a second transfer instruction
The wallet establishment module establishes a first and for an amount of bitcoin from the first wallet and a bitcoin
second wallets in the data store and stores a value repre             address associated with a second node of the bitcoin net
sentative of an amount of bitcoin held by the first wallet . The work . The processor, in response to the second transfer
wallet management module receives , over the network inter- 40 instruction records a transfer in the first wallet for the
face device , a first transfer instruction for an amount of amount of bitcoin in the second transfer instruction out of
bitcoin from the first wallet and an identifier of the second the first wallet , broadcasts a message to the Bitcoin network ,
wallet, in response to the first transfer instruction, records a including to the second node, to record a transfer associated
transfer in the first wallet for the amount of bitcoin in the first with the bitcoin address associated with the second node, for
transfer instruction out of the first wallet and a transfer in the 45 the amount of bitcoin in the second transfer instruction and
second wallet, identified by the identifier of the second pays a miner's fee for the second transfer.
wallet, for the amount of bitcoin in the first transfer instruc         The invention also provides a host computer system for
tion into the second wallet without paying a miner's fee for transacting bitcoin including a processor, a computer read
the first transfer. In order to execute a subsequent on -block able medium connected to the processor, a local storage on
chain transaction , the wallet management module receives , 50 the computer readable medium and a set of instructions on
over the network interface device, a second transfer instruc the computer readable medium that are executable by the
tion for an amount of bitcoin from the first wallet and a processor. The set of instructions includes a register, a
bitcoin address associated with a second node of the Bitcoin Bitcoin address and an associated private key and value
network, and in response to the second transfer instruction , stored in the register, a local controller, a splitter, an offline
records a transfer in the first wallet for the amount of bitcoin 55 distribution module, at least one restoration interface, and an
in the second transfer instruction out of the first wallet , assembler. The local controller transfers a private key for a
broadcasts a message to the Bitcoin network , including to          Bitcoin address of a vault , to a local storage connected to a
the second node , to record a transfer associated with the processor and transfers the value of the Bitcoin address in
bitcoin address associated with the second node, for the the register to the vault . The splitter splits the private key of
amount of bitcoin in the second transfer instruction , and 60 the Bitcoin address of the vault into a plurality of codes . The
pays a miner's fee for the second transfer.                   offline distribution module distributes the codes to remote
   The invention further provides a method of transacting distributed storage locations , removes the private key of the
bitcoin including . A processor of a first host computer Bitcoin address of the vault from the local storage , and
system at a first node of the Bitcoin network establishes first removes the value for the Bitcoin address of the register
and second wallets in a data store connected to the processor. 65 from the Bitcoin address of the register. The restoration
The processor stores a value representative of an amount of interface receives at least some of the codes into which the
bitcoin held by the first wallet . The processor receives a first private key for Bitcoin address of the vault has been split .
                                                    US 10,755,241 B2
                              5                                                                  6
The assembler assembles the codes that have been received          transacting set without permitting transacting with the Bit
into the private key of the Bitcoin address of the vault . The coin addresses of the first transfer set due to the portions
local controller restores the private key of the Bitcoin thereof being transferred to the first vault. The processor
address of the vault from the local storage , and restores the restores the portion of the Bitcoin addresses of the first
value for the Bitcoin address in the register from the vault. 5 transfer set from the first vault to the wallet . The processor
   The invention further provides a method of transacting transacts using the Bitcoin addresses of the first transfer set
bitcoin . A processor transfers a private key of the Bitcoin due to the portions thereof being restored from the first vault
address of a vault to a local storage connected to the            to the wallet .
processor. The processor splits the private key of the Bitcoin       The invention further provides a non - transitory computer
address of the vault into a plurality of codes . The processor 10 readable medium having stored thereon a set of instructions
distributes the codes to remote distributed storage locations . that are executable by a processor to carry out a method of
The processor transfers a value of a Bitcoin address in a transacting. A processor stores a plurality of Bitcoin
register to the vault . The processor receives at least some of addresses in a wallet. The processor selects a first transfer set
the codes into which the private key of the Bitcoin address of the Bitcoin addresses for cold storage in a first vault. The
of the vault has been split . The processor assembles the 15 processor transfers at least a portion of each of the Bitcoin
codes that have been received into the private key of the addresses of the first transfer set to the first vault while
Bitcoin address of the vault . The processor restores the keeping the portions a first transaction set in the register. The
private key of the Bitcoin address of the vault to the vault. processor transacts using the Bitcoin addresses of the first
The processor restores the value of the Bitcoin address in the transacting set without permitting transacting with the Bit
register from the vault .                                       20 coin addresses of the first transfer set due to the portions
   The invention also provides a non - transitory computer thereof being transferred to the first vault. The processor
readable medium having stored thereon a set of instructions restores the portion of the Bitcoin addresses of the first
that are executable by a processor to carry out a method of transfer set from the first vault to the wallet . The processor
transacting bitcoin . A processor transfers a private key of the transacts using the Bitcoin addresses of the first transfer set
Bitcoin address of a vault to a local storage connected to the 25 due to the portions thereof being restored from the first vault
processor. The processor splits the private key of the Bitcoin to the wallet .
address of the vault into a plurality of codes . The processor       The invention also provides a method of effecting pay
distributes the codes to remote distributed storage locations. ment including receiving, by a host computer system , a
The processor transfers a value of a Bitcoin address in a          request for payment from a merchant computer system ,
register to the vault . The processor receives at least some of 30 including an amount in a currency, determining, by the host
the codes into which the private key of the Bitcoin address computer system , a first exchange rate , wherein the first
of the vault has been split . The processor assembles the exchange rate fluctuates and the first exchange rate is
codes that have been received into the private key of the determined at a first moment in time , converting, by the host
Bitcoin address of the vault . The processor restores the computer system , the amount in the currency to an amount
private key of the Bitcoin address of the vault to the vault. 35 in bitcoin using the first exchange rate at the first moment in
The processor restores the value of the Bitcoin address in the time , receiving , by the host computer system , a send instruc
register from the vault .                                        tion from the customer computer system , wherein the send
   The invention further provides a host computer system for instruction is at a second moment in time later than the first
transacting bitcoin including a processor, a network inter moment in time and the exchange rate at the second moment
face device connected to the processor, a computer readable 40 in time is a second exchange rate that is different than the
medium connected to the processor, a local storage on the first exchange rate at the first moment in time , receiving , by
computer readable medium and a set of instructions on the the host computer system , payment in bitcoin from the
computer readable medium that are executable by the pro            customer in an amount that is based on the amount in bitcoin
cessor. The set of instructions includes a wallet, a plurality and transmitting, by the host computer system , in response
of Bitcoin addresses stored in the wallet , a first vault , and a 45 to receiving the send instruction from the customer com
local controller. The local controller is executable for select    puter system , a payment instruction to pay currency to the
ing a first transfer set of the Bitcoin addresses for cold merchant, wherein the currency paid to the merchant is for
storage in the first vault, transferring at least a portion of an amount that is at least in part based on the amount in the
each of the Bitcoin addresses of the first transfer set to a first currency that is converted to bitcoin at the first moment in
vault while keeping the portions a first transaction set in the 50 time even though the exchange rate is different at the second
register, and restoring at least the portion of the Bitcoin       moment in time.
addresses of the first transfer set from the first vault to the     The invention further provides a host computer system for
wallet and a wallet management module transacting using effecting payment including a processor, a computer read
the Bitcoin addresses of the first transacting set without able medium connected to the processor and a set of
permitting transacting with the Bitcoin addresses of the first 55 instructions on the computer readable medium that are
transfer set due to the portions thereof being restored to the executable by the processor. The set of instructions includes
first vault , and transacting using the Bitcoin addresses of the an application programmable interface ( API ) receiving a
first transfer set due to the portions thereof being restored request for payment from a merchant computer system ,
from the first vault to the wallet .                              including an amount in a currency, a currency converter
   The invention also provides a method of transacting 60 determining a first exchange rate, wherein the first exchange
bitcoin . A processor stores a plurality of Bitcoin addresses in rate fluctuates and the first exchange rate is determined at a
a wallet . The processor selects a first transfer set of the first moment in time , and converting, by the host computer
Bitcoin addresses for cold storage in a first vault . The system , the amount in the currency to an amount in bitcoin
processor transfers at least a portion of each of the Bitcoin using the first exchange rate at the first moment in time ,
addresses of the first transfer set to the first vault while 65 transaction processor receiving a send instruction from the
keeping the portions a first transaction set in the register. The customer computer system , wherein the send instruction is
processor transacts using the Bitcoin addresses of the first       at a second moment in time later than the first moment in
                                                     US 10,755,241 B2
                               7                                                                 8
time and the exchange rate at the second moment in time is         authorization instructions are received due to one or more
a second exchange rate that is different than the first users reacting to the first and second messages sent to the
exchange rate at the first moment in time , and receiving a first and second addresses and transferring, by the host
payment in bitcoin from the customer in an amount that is computer system , the amount of bitcoin out of the vault only
based on the amount in bitcoin and a bank transfer module 5 if both the first and second authorization instructions are
transmitting in response to receiving the send instruction detected .
from the customer computer system , a payment instruction          The invention further provides a bitcoin management
to pay currency to the merchant, wherein the currency paid system , including a processor, a computer - readable medium
to the merchant is for an amount that is at least in part based connected to the processor and a set of instructions on the
on the amount in the currency that is converted to bitcoin at 10 computer readable medium that are executable by the pro
the first moment in time even though the exchange rate is cessor. The set of instructions includes a vault establishment
different at the second moment in time .                         wizard establishing a vault and storing first and second
   The invention also provides a non - transitory computer electronic communication addresses in relation to the vault,
readable medium having stored thereon a set of instructions transaction processor storing bitcoin in the vault and a vault
that are executable by a processor to carry out a method of 15 management module receiving a request to transfer an
transacting bitcoin including receiving, by a host computer amount of the bitcoin out of the vault , transmitting, in
system , a request for payment from a merchant computer response to the request, first and second messages over a
system , including an amount in a currency, determining, by network to the first and second addresses, detecting whether
the host computer system , a first exchange rate, wherein the first and second authorization instructions are received due
first exchange rate fluctuates and the first exchange rate is 20 to one or more users reacting to the first and second
determined at a first moment in time , converting, by the host messages sent to the first and second addresses, and instruct
computer system , the amount in the currency to an amount ing the transaction processor to transfer the amount of
in bitcoin using the first exchange rate at the first moment in bitcoin out of the vault only if both the first and second
time , receiving , by the host computer system , a send instruc  authorization instructions are detected.
tion from the customer computer system , wherein the send 25 The invention also provides a method of transacting
instruction is at a second moment in time later than the first bitcoin including storing, by a host computer system , a
moment in time and the exchange rate at the second moment public key, receiving , by the host computer system , a request
in time is a second exchange rate that is different than the  from a user computer system to transact using a bitcoin
first exchange rate at the first moment in time , receiving, by
                                                              address, transmitting, by the host computer system , a veri
the host computer system , payment in bitcoin from the 30 fication script to the user computer system , the verification
customer in an amount that is based on the amount in bitcoin script including an authorization and a signature algorithm
and transmitting, by the host computer system , in response that is executable on the user computer system to sign the
to receiving the send instruction from the custome com authorization with a private key to obtain a signed authori
puter system , a payment instruction to pay currency to the zation that includes the signature and transmit the signed
merchant, wherein the currency paid to the merchant is for 35 authorization to the host computer system , receiving , by the
an amount that is at least in part based on the amount in the host computer system , the signed authorization including the
currency that is converted to bitcoin at the first moment in signature from the user computer system , verifying, by the
time even though the exchange rate is different at the second host computer system , the signature of the signed authori
moment in time.                                               zation received from the user computer system using a
   The invention further provides a method of managing 40 public key; and transacting, by the host computer system ,
bitcoin , including establishing, by a host computer system , with the bitcoin address, the transacting being permitted due
a vault and storing first and second electronic communica           to a successful verification of the signature but not upon an
tion addresses in relation to the vault, storing, by the host unsuccessful verification of the signature .
computer system , bitcoin in the vault , receiving , by the host       The invention further provides a host computer system
computer system , a request to transfer an amount of the 45 including a processor, a set of data and instructions on the
bitcoin out of the vault, transmitting, by the host computer computer -readable medium that are executable by the pro
system , in response to the request, first and second messages cessor that are executable by the processor, a public key, a
over a network to the first and second addresses, detecting, transaction processor receiving a request from a user com
by the host computer system , whether first and second puter system to transact using a bitcoin address, a verifica
authorization instructions are received due to one or more 50 tion script that is transmitted to the user computer system ,
users reacting to the first and second messages sent to the the verification script including an authorization and a
first and second addresses and transferring, by the host signature algorithm that is executable on the user computer
computer system , the amount of bitcoin out of the vault only system to sign the authorization with a private key to obtain
if both the first and second authorization instructions are a signed authorization that includes the signature and trans
detected .                                                       55 mit the signed authorization to the host computer system , the
  The invention also provides a non - transitory computer          host computer system receiving the signed authorization
readable medium having stored thereon a set of instructions        including the signature from the user computer system , and
which , when executed by a processor, executes a method            a verification module verifying the signature of the signed
including establishing , by a host computer system , a vault       authorization received from the user computer system using
and storing first and second electronic communication 60 abitcoin
addresses in relation to the vault , storing, by the host
                                                           publicaddress
                                                                  key, the, the
                                                                            transaction processor transacting with the
                                                                                transacting being permitted due to a
computer system , bitcoin in the vault , receiving , by the host   successful verification of the signature but not upon an
computer system , a request to transfer an amount of the           unsuccessful verification of the signature.
bitcoin out of the vault, transmitting, by the host computer       The invention also provides a host computer system
system, in response to the request, first and second messages 65 including a processor, a network interface device connected
over a network to the first and second addresses, detecting, to the processor, a computer readable medium connected to
by the host computer system , whether first and second the processor and a set of instructions on the computer
                                                     US 10,755,241 B2
                               9                                                                 10
readable medium that are readable and executable by the                FIG . 1A is a block diagram of a network environment that
processor. The set of instructions include an embedded code          includes the Bitcoin network and a number of systems
generator generating an embedded code for inclusion within forming part thereof or connected thereto ;
a website of a partner computer system , the embedded code            FIG . 1B is a block diagram of a first host computer system
including   a startup
call from the   sendercaller causing
                       computer       transmission
                                   system to the hostofcomputer
                                                        a startup 5 and a first and second user devices connected thereto;
system , a startup call responder receiving the startup call          FIG . 2 is diagrammatic view of a first wallet that is held
from the sender computer system and transmitting, in within           FIG  .
                                                                             a first host computer system in FIG . 1 ;
                                                                              3 is a view similar to FIG . 2 , further illustrating a
response to the startup call , a tip button and a session script
to the sender computer system , the session script being 10 second wallet that has been established within the first host
executable by the sender computer system to transmit a computer system ;
session call to the host computer system and a session                FIG . 4 is a view of an email that is received by the second
responder transmitting, in response to the session call , at user device in FIG . 1 ;
least one payment button and a payment script to the sender           FIG . 5 is a view of a browser displaying a user interface
computer system , the payment button being selectable by
the user ofthe sender computer system toexecute the 15 with fields. 6 tofor30creating           login details for the second wallet;
payment script, the payment script transmitting an instruc of FIGS                       are views similar to FIG . 5 that step user
                                                                      the second user device through a wallet set up ;
tion to a transaction processor to transfer funds from a              FIGS . 31 to 33 are views of the browser wherein the user
sender account to a receiver account.
   The invention further provides a method of transferring interface discloses various tools that can be used by the user ;
funds including generating, by a host computer system , an 20 FIGS . 34 to 37 are views of the browser wherein the user
embedded code for inclusion within a website of a partner interface is used by the user to purchase bitcoin from the first
computer system , the embedded code including a startup host computer system ;
caller causing transmission of a startup call from the sender         FIG . 38 is an email that is received by the second user
computer system to the host computer system , receiving, by device to confirm the purchase of the bitcoin from the first
the host computer system , the startup call from the sender 25 host computer system ;
computer system , transmitting, by the host computer system           FIG . 39 is an email that is received by the second user
in response to the startup call , a tip button and a session device
script to the sender computer system , the session script being wallet aswithparta notification
                                                                                      of a
                                                                                                  that bitcoin has been added to their
                                                                                           referral bonus system ;
executable by the sender computer system to transmit a                FIG . 40 is a view of the browser wherein the user interface
session call to the host computer system and transmitting, by displays “ Limits and Verifications ” associated with the sec
the host computer system in response to the session call , at 30 ond    wallet ;
least one payment selection and a payment script to the               FIG  . 41 is a view similar to FIG . 3 displaying transfer of
sender computer system , the payment selection being select
able by the user of the sender computer system to execute bitcoin             from the second wallet to the first        et;
                                                                      FIGS . 42 and 43 are views of the browser when the user
the payment script, the payment script transmitting an
instruction to a transaction processor to transfer funds from 35 interface  steps the user through the transfer of bitcoin from
                                                                 the second wallet to the first wallet ;
a sender account to a receiver account.
   The invention also provides a method of transacting              FIG . 44 is a view of the browser wherein the user interface
bitcoin including executing, by a host computer system , a displays Bitcoin addresses associated with transactions that
trading algorithm , including receiving sell offers for bitcoin have been completed ;
from a sellers , receiving a buy offers for bitcoin from a 40 FIG . 45 is a view similar to FIG . 40 further showing the
buyers , creating respective matches wherein each match              transfer of bitcoin from the second wallet to a third wallet
includes one of the buy offers and one of the sell offers,           that is connected to a second host computer system ;
broadcasting    each respective match over a multicast pipe
line , receiving each respective match with a clearing module
                                                                        FIG . 46 is a block diagram illustrating splitting of a
and clearing the respective match by updating an exchange 45 private
                                                                FIG .
                                                                      key of a vault and offline distribution ;
                                                                      47 is a block diagram illustrating removal of the
database to reflect the respective match by transferring a private key    of the vault ;
representation of bitcoin from the seller to the buyer and      FIG . 48 is a block diagram illustrating offline or “ cold ”
transferring a representation of currency from the buyer to          storage of values of Bitcoin addresses of a wallet in the
the seller.
   The invention further provides a system for transacting 50 vault
                                                                FIG
                                                                   ;
                                                                     . 49 is a block diagram illustrating isolation of the
bitcoin including an order gateway receiving sell offers for vault with   its private key removed;
bitcoin from a sellers and receiving a buy offers for bitcoin   FIG . 50 is a block diagram illustrating how the private key
from a buyers, a matching engine creating respective
matches wherein each match includes one of the buy offers of the vault and the value of the Bitcoin addresses are
and one of the sell offers, a multicast pipeline , the matching restored ;
engine broadcasting each respective match over the multi- 55 FIGS . 51a to 51d are block diagrams that illustrate how
cast pipeline , an exchange database ; and a clearing module values of certain Bitcoin addresses in a wallet are removed
receiving each respective and clearing the respective match and others are maintained ;
by updating the exchange database to reflect the respective       FIG . 52 is a graph illustrating how the wallet is main
match by transferring a representation of bitcoin from the tained within a range so that only a portion of the wallet is
seller to the buyer and transferring a representation of 60 “ hot ” in the sense that a user of the wallet can use the “ hot”
currency from the buyer to the seller, thereby executing a portion for transacting with another user ;
trading algorithm .                                               FIG . 53 is a block diagram that shows how an interme
                                                               diate hot wallet is used to collect value from multiple wallets
       BRIEF DESCRIPTION OF THE DRAWINGS                       before transfer to a vault ;
                                                            65    FIG . 54 is a block diagram of a network environment that
   The invention is further described by way of example includes a customer computer system and merchant com
with reference to the accompanying drawings, wherein :         puter system ;
                                                   US 10,755,241 B2
                               11                                                                12
  FIG . 55 is a block diagram illustrating functioning for         module 38. As further illustrated in the drawing, the hosted
purposes of locking an exchange rate in when processing a email module 46 is connected over the Internet 22 to the
transaction made by the customer computer system on the second user device 20 and the second user device 20 is
merchant computer system in FIG . 54 ;                             connected over the Internet 22 and the user interface 36 to
   FIG . 56 is a flow chart illustrating the establishment of a 5 the wallet establishment module 40 .
personal vault ;                                                      As shown in FIG . 2 , the first host computer system 14
   FIG . 57 is a flow chart illustrating how bitcoin is trans already has one wallet (Wallet A) stored among the wallets
ferred into and out of the vault;                                  42 corresponding to the first user device 18. The first wallet
   FIG . 58 is a block diagram of the first host computer (Wallet A) includes an email address (email address A) and
system illustrating components that are used for establishing 10 login details for the wallet . The first wallet (Wallet A) also
the vault and transferring bitcoin into and out of the vault; includes a number of Bitcoin addresses (Bitcoin address 1 ;
   FIG . 59 is an email that is transmitted to verify a sec Bitcoin address 2 ) that have been created due to respective
ondary email address ;                                             transfers or purchases ( Transfer 1 ; Transfer 2 ) . The first
   FIG . 60 is a view of a browser wherein a user interface Bitcoin address (Bitcoin address 1 ) is created due to a
displays options for transferring bitcoin out of a vault ;      15 purchase ( Transfer 1 ) from a master wallet of the first host
   FIGS . 61 and 62 are emails that are transmitted to primary computer system 14 (First Host) and is recorded for a value
and secondary email addresses to approve a withdrawal;             in an amount in bitcoin . The second Bitcoin address ( Bitcoin
  FIG . 63 is a view of the browser with the user interface        address 2 ) is created due to a transfer ( Transfer 2 ) from
displaying a transaction status window ;                        another location within the Bitcoin network 12 having a
  FIG . 64 is a block diagram illustrating the establishment 20 network address outside of the first host computer system 14
of a user- controlled vault;                                     and is recorded for a particular amount in bitcoin . The first
   FIG . 65 is a block diagram illustrating the user of the wallet (Wallet A) was originally established by the wallet
user -controlled vault for authorizing a transaction             establishment module 40 in FIG . 1B . The email address
   FIG . 66 is a block diagram of an address generator that is (email address A) and login details of the first wallet were
used by the user - controlled vault ;                         25 also recorded by the wallet establishment module 40. The
   FIG . 67 to FIG . 71 are a block diagrams illustrating the wallet establishment module 40 and wallet management
functioning of a tip button ;                                    module 44 were used to record the transfers and purchases
   FIG . 72 is a block diagram of a system for transacting ( Transfer 1 ; Transfer 2 ) , their Bitcoin addresses (Bitcoin
bitcoin according to an embodiment of the invention;              address 1 ; Bitcoin address 2 ) , their values and other details
   FIGS . 73a to 73f illustrate the use of the system of FIG . 30 within the wallet.
72 for executing transfer - in , trading and withdrawal algo        A user of the first user device 18 in FIG . 1B may use a
rithms; and                                                       mobile application on the first user device 18 to communi
   FIG . 74 is a block diagram of a machine in the form of a cate over the Internet 22 directly with the login module 38
computer system forming part of the network environment. or may use a browser on the first user device 18 to com
                                                               35 municate via the Internet 22 and the website 34 with the
           DETAILED DESCRIPTION OF THE                         login module 38. A browser application on the first user
                        INVENTION                              device 18 transmits a user interface request over the Internet
                                                               22 to the website 34. The website 34 responds to the user
   FIG . 1A of the accompanying drawings illustrates a interface request by transmitting the user interface 36 over
network environment 10 , including the Bitcoin network 12 , 40 the Internet 22 to the first user device 18. The user interface
a first host computer system 14 within which the invention 36 is then displayed on the first user device 18. The user
manifests itself, a second host computer system 16 , first and interface 36 includes fields for entering login credentials,
second user devices 18 and 20 connected over the Internet          which are then transmitted from the first user device 18 over
22 to the first host computer system 14 , a third user device the Internet 22 to the login module 38. The login module 38
24 connected to the second host computer system 16 , a 45 verifies whether the login credentials match the login details
bitcoin exchange computer system 26 and a miner computer for the wallet ( Wallet A) . If the login credentials match the
system 28 .                                                   login details, then the login module 38 logs the first user
   The Bitcoin network 12 includes a host node 30 and a device 18 into the wallet (Wallet A) in FIG . 2. If the login
plurality of remote nodes 32A to D that are connected to one credentials do not match the login details, then the first user
another. The first host computer system 14 is connected to 50 device 18 is not logged in to the wallet.
the host node 30. The bitcoin exchange computer system 26             If the first user device 18 in FIG . 1B is logged in to the
is connected to the remote node 32A . The second host              wallet , the login module 38 also provides access for the first
computer system 16 is connected to the remote node 32B .           user device 18 to the hosted email module 46 and transmis
The miner computer system 28 is connected to the remote sion of an email by a user of the first user device 18 to an
node 32D or could reside on the same computer system .        55 email address of the second user device 20. The user
   The first host computer system 14 is used primarily for interface 36 provides a field for entering the email address
transacting bitcoin and, as shown in FIG . 1B , includes a of the second user device 20. The user interface 36 also
website 34 having a user interface 36 , a login module 38 , a includes a field for entering an amount in bitcoin (or an
wallet establishment module 40 , a plurality of wallets 42 , a amount in local currency that is converted to bitcoin using
wallet management module 44 and a hosted email module 60 an exchange rate ) that is being transferred from the wallet
46. The login module 38 is connected to the website 34 and (Wallet A) corresponding to the first user device 18 to a
the hosted email module 46 is connected to the login module respective wallet among the wallets 42 corresponding to the
38. The wallet establishment module 40 is connected to the         second user device 20 that has not yet been established at
wallets 42. The hosted email module 46 is connected via the        this point in time . The user of the first user device 18 then
wallet management module 44 to the wallets 42. As illus- 65 uses the hosted email module 46 to send an email at 50 to
trated in the drawing, the first user device 18 is connected the second user device 20. The hosted email module 46
over the Internet 22 and the user interface 36 to the login simultaneously at 52 instructs the wallet establishment mod
                                                    US 10,755,241 B2
                             13                                                                    14
ule 40 to establish a wallet corresponding to the email amount of bitcoin at the Bitcoin address ( Bitcoin address 4 )
address within the wallets 42. The hosted email module 46 in FIG . 3. The user can select various tools down the left
simultaneously instructs the wallet management module 44 margin , including sending or requesting bitcoin , buying or
to record the amount of bitcoin that is being transferred from selling bitcoin , account settings and various merchant tools .
the wallet ( Wallet A) within the wallet corresponding to the 5 FIG . 8 illustrates a view that is displayed to the user if the
email address.                                                     user selects the “ Buy /Sell” link in FIG . 7. The user is
    FIG . 3 illustrates further activity within the wallets 42 due prompted to add a bank account. FIGS . 9 through 15 step the
to the email represented by a third transfer ( Transfer 3 ) . user through the entry of bank account details and verifica
When the user of the first wallet ( Wallet A) transmits the tion of the bank account. The user can also select a credit
email , the system uses an existing Bitcoin address (Bitcoin 10 card as a backup payment. FIGS . 16 to 19 step the user
address 2 ) to which the outgoing transfer is charged . Asso through the entry of a credit card number and a billing
ciated with the transfer ( Transfer 3 ) are the email address to address, and FIGS . 20 and 21 step the user through a
which the email has been transmitted, the amount in bitcoin , verification process to verify that the user is in control of the
a miner's fee of zero bitcoin that is paid by the first host credit card account. FIGS . 22 and 23 request additional
computer system 14 to any miner computer system such as 15 information from the user . FIG . 23 also allows the user to
the miner computer system 28 in FIG . 1A , and a host fee of verify a phone at a phone number and FIGS . 24 through 27
zero bitcoin that are charged to the wallet (Wallet A) for the step the user through a process for verifying their phone and
transfer. A second wallet ( Wallet B ) is established by the phone number. FIGS . 28 through 30 illustrate a process for
wallet establishment module 40 and the email address (email verifying an identity of the user of the second user device 20 .
address B ) of the second user device 20 is recorded as an 20 As illustrated in FIGS . 31 to 33 , the top margin within the
identifier of the wallet (Wallet B ) . A Bitcoin address (Bitcoin account settings allow for additional tools such as referrals
address 3 ) is recorded within the second wallet ( Wallet B ) (FIG . 31 ) , viewing of Bitcoin addresses (FIG . 32 ) , and
for the transfer ( Transfer 3 ) . Within the second wallet integration with an application programmable interface
( Wallet B ), the transfer ( Transfer 3 ) has the Bitcoin address (FIG . 33 ) .
( Bitcoin address 3 ) , the identifier of the wallet (Wallet A) 25 FIG . 34 illustrates a process that is initiated by the user to
from where the funds are transferred associated therewith , purchase bitcoin from a wallet of the first host computer
and the amount in bitcoin that has been transferred . The           system 14. In the present example, the user selects one ( 1 )
amount in bitcoin corresponding to the transfer ( Transfer 3 ) bitcoin (BTC ) to purchase . FIGS . 35 and 36 step the user
of both wallets (Wallet A ; Wallet B ) is the same , consistent through the process of purchasing the bitcoin . Once the
with double entry accounting principles . The second wallet 30 bitcoin is purchased , the user can select on “ History ” tab in
( Wallet B ) so far has no login details or any other user the top margin to display a view as shown in FIG . 37
information and has not been accessed by a user of the wherein the transaction is displayed and is marked as
second user device 20 this point in time .                          “ PENDING ” .
  FIG . 4 illustrates the email when it is received at the            FIG . 38 shows an email that is transmitted by the hosted
second user device 20 in FIG . 1B . The email is received and 35 email module 46 in FIG . 1B to the second user device 20 to
viewed within an email application on the second user               confirm the purchase of the bitcoin following selection of a
device 20. The email includes a link (“ Click here to sign in       “ Confirm " button in FIG . 35. The email also has a link that,
and claim this amount ” ) that, when selected by the user of        when selected by the user, opens the browser on the second
the second user device 20 , transmits a user interface request user device 20 and allows the user to login to their wallet and
from the browser on the second user device 20 over the 40 view the transaction .
Internet 22 to the website 34. The website 34 responds to the         FIG . 39 shows an email that is transmitted by the hosted
user interface request to transmit the user interface 36 over email module 46 in FIG . 1B to the second user device 20
the Internet 22 to the second user device 20 for viewing with a notification that bitcoin has been added to their wallet
within the browser.                                                as part of a referral bonus system .
   FIG . 5 illustrates the user interface 36 as displayed on the 45 FIG . 40 illustrates a view that is displayed when the user
second user device 20 in FIG . 1B . The user interface 36 selects a “ Limits and Verifications ” tab in the top margin of
includes a plurality of fields for the user of the second user the “ Buy / Sell” page.
device 20 to enter login details for the second wallet ( Wallet   When the user selects the “ Send /Request ” link in the left
B ) , including a password and a confirmation of the pass margin in FIG . 40 , the user is provided an option to send
word . After the user has entered a password , the user can 50 bitcoin from their wallet (Wallet B ) in FIG . 3 to another
access their wallet by selecting the button " Access My wallet (e.g. the first wallet ( Wallet A) ) in FIG . 3 .
Wallet” . The wallet establishment module 40 in FIG . 1B              FIG . 41 illustrates further transfers or purchases ( Transfer
stores the login credentials in association with the second         4 ; Transfer 5 ; Transfer 6 ) . The fourth transfer ( Transfer 4 )
wallet (Wallet B ) . The login module 38 also logs the second represents the purchase of bitcoin from the first host com
user device 20 into the second wallet ( Wallet B ) . If the user 55 puter system's 14 master wallet .
is logged out , the user can be provided with a login page             The fifth transfer ( Transfer 5 ) represents the transfer of
where the user can enter login credentials that are compared bitcoin from the second wallet ( Wallet B ) to the first wallet
with the login details in the second wallet (Wallet B ) and (Wallet A) . The second wallet (Wallet B ) now has login
then log into the second wallet ( Wallet B ) following a details stored therein . If the second user device 20 in FIG .
favorable match between the login credentials and the login 60 1B has been logged out of the second wallet (Wallet B ) , then
details .                                                           the second user device 20 is first directed to the login module
   FIG . 6 shows a view that is displayed on the second user 38 which receives login details for the second wallet ( Wallet
device 20 in FIG . 1B . The user is already logged into the B ) from the second user device 20 , verifies whether the login
wallet, as shown in the top right. The user can accept or credentials for the second wallet ( Wallet B ) match the login
decline an agreement. FIG . 7 displays the first page that is 65 details for the second wallet (Wallet B ) . If the login details
displayed to the user following acceptance of the agreement. match the login credentials, then the login module 38 logs
The page shows the current balance corresponding to the the second user device 20 into the second wallet ( Wallet B ) .
                                                      US 10,755,241 B2
                               15                                                                     16
  The login module 38 then provides the second user device              bitcoin to be transferred to the third wallet ( Wallet C ) . A
20 with access to the hosted email module 46. The user of               transfer ( Transfer 7 ) is recorded within the second wallet
the second user device 20 then enters the email address                 (Wallet B ) . Associated with the transfer ( Transfer 7 ) are the
( email address A) of the user of the first wallet (Wallet A)           Bitcoin address (Bitcoin address 6 ) , the amount in bitcoin
and an amount of bitcoin that the user of the second user 5 that is being transferred and a miner's fee that is charged for
device 20 wishes to transfer from the second wallet ( Wallet the transfer and has to be paid by the first host computer
B ) to the first wallet ( Wallet A) . The user of the second user       system 14 to the miner computer system 28 in FIG . 1A . No
device 20 then uses the hosted email module 46 to send an               fee is charged by the first host computer system 14 for a
email via the Internet 22 to the first user device 18. As soon          transfer to another Bitcoin address .
as the email is sent, a transfer ( Transfer 5 ) is recorded within 10     When the user of the second user device 20 in FIG . 1A
the second wallet (Wallet B ) . Because one of the Bitcoin              completes the purchase, a transfer instruction is created and
addresses (Bitcoin address 4 ) has funds associated there               is broadcast via the host node 30 to all remote nodes 32A - D
with , it can be charged for the transfer ( Transfer 4 ) . Within       within the Bitcoin network 12. The transfer instruction thus
the second wallet (Wallet B ) the transfer ( Transfer 4 ) has the       traverses the first node and the second remote node 32B to
email address (email address A) to which the email has been 15 reach the second host computer system 16. The second host
sent and the amount in bitcoin associated therewith .                   computer system 16 and all other computer systems con
  As indicated , the miner's fee that is paid by the first host         nected to the remote nodes 32A - D record the transfer
computer system 14 and the host fee that is charged for the ( Transfer 7 ) with respect to the Bitcoin addresses (Bitcoin
transfer are zero bitcoin because the first wallet (Wallet A) address 4 ; Bitcoin address 6 ) . The transfer ( Transfer 7 ) has
is stored within the wallets 42 of the first host computer 20 associated therewith the amount in bitcoin .
system 14. The user of the first user device 18 receives the               The transfer instruction that results in the transfer ( Trans
email indicating the transfer of bitcoin to their wallet ( Wallet fer 5 ) thus results in no miner's fee being charged to and paid
A) . A Bitcoin address (Bitcoin address 5 ) is recorded within by the first host computer system 14. No host fee is charged
the first wallet ( Wallet A) for the transfer ( Transfer 5 ) to the second wallet ( Wallet B ) because the transfer ( Trans
together with the identifier of the second wallet (Wallet B ) 25 fer 7 ) is made to another wallet (Wallet A) within the wallets
from which the transfer has been made and the amount in 42 of the first host computer system 14. By contrast, the
bitcoin . The amount in bitcoin corresponding to the transfer transfer instruction that results in the transfer ( Transfer 7 )
( Transfer 4 ) in the second wallet ( Wallet B ) is the same as representing the transfer to the Bitcoin address (Bitcoin
the amount in bitcoin as in the first wallet ( Wallet A) .              address 6 ) in the third wallet ( Wallet C ) results in a miner's
    As illustrated by the next transfer ( Transfer 6 ) , the user of 30 fee that is paid by the first host computer system 14 to the
the second wallet ( Wallet B ) can opt to send bitcoin to a miner computer system 28. The miner computer system 28
Bitcoin address of the first wallet ( Wallet A) . The transfer is responsible for verifying transfers of bitcoin over the
( Transfer 6 ) is the same as the preceding transfer ( Transfer Bitcoin network 12. In the present scenario , the miner
5 ) in all other respects .                                             computer system 28 verifies the transfer of bitcoin from the
    FIG . 42 shows a view that is displayed to the user of the 35 second wallet ( Wallet B ) to the third wallet ( Wallet C ) .
second user device 20 in FIG . 1B in order to make the                    Another transfer may comprise that bitcoin is sent to one
transfer from their wallet ( Wallet B ) to the first wallet of the nodes, e.g. node 32C . The node 32C could be a fourth
( Wallet A) . The view includes a field for the user to enter the user device which is owned by the recipient of the bitcoin
email address ( email address A) and fields for entering either transfer having its own bitcoin address .
an amount in bitcoin ( BTC ) or an amount in a local currency 40 FIG . 46 illustrates components that are used for cold
(USD -United States Dollar ). The exchange rate between storage of value of bitcoin , including a local storage 56 , a
bitcoin and the local currency is shown in the top left corner . local controller 58 , a vault 64 , a splitter 66 , one or more
The view also includes a button “ Send Money ” which , when encryption algorithms 68 and 70 and an offline distribution
selected by the user, initiates the transfer of bitcoin .               module 72 .
    FIG . 43 is a view that is displayed to the user indicating 45 The vault 64 has a Bitcoin address 80 with a private key
transactions that have been initiated or completed. The 79. The private key 79 is , for purposes of illustration , shown
purchase of bitcoin discussed with reference to FIGS . 35 to as a nine digit sequence of characters that are provided to the
37 is shown as “ PENDING ” . A block chain verification splitter 66. For purposes of illustration , the splitter 66 splits
notice has to be broadcast by the miner computer system 28 the nine digits of the private key 79 into seven overlapping
and be received by the first host computer system 14 in FIG . 50 codes ( Codes 1 to 7 ) . The encryption algorithm 68 encrypts
1A before a determination is made to change the marker the first code (Code 1 ) into an encrypted code (Encrypted
“ PENDING ” to “ COMPLETE " . The other transactions rep                Code 1 ) . In a similar manner, the second code ( Code 2 ) is
resenting transfers between the first and second wallets encrypted by an encryption algorithm ( not shown) into an
( Wallet A and Wallet B ) in FIG . 41 are shown as completed encrypted code (Encrypted Code 2 ) . Each one of the seven
because    they do not need block chain verification outside of 55 codes is encrypted into a separate encrypted code . A separate
the first host computer system 14. No block chain verifica key may be used for each one of seven codes . Alternatively ,
tion notice is thus required for these transactions to be a separate encryption algorithm may be used for each one of
marked " COMPLETE " . FIG . 44 shows a view that can be the seven codes .
selected by the user by selecting a tab in the top margin                  Once all the codes have been encrypted , the offline
wherein the user is shown the Bitcoin addresses associated 60 distribution module 72 transmits each one of the encrypted
with transactions that have been completed.                             codes ( Encrypted Code 1 to 7 ) to a separate location . The
    FIG . 45 illustrates a further transaction ( Transfer 7 ) locations are remote locations that are geographically sepa
wherein bitcoin is transferred from the second wallet ( Wallet          rated from one another . The offline distribution module 72
B ) to a third wallet (Wallet C ) held by the second host may also be used to print one or more of the encrypted codes
computer system 16 in FIG . 1A . The user of the second user 65 for paper delivery to respective remote locations .
device 20 enters a bitcoin address (Bitcoin address 6 ) that is           FIG . 47 illustrates functioning of the offline distribution
located in the third wallet ( Wallet C ) and an amount of               module 72 following distribution of the encrypted codes in
                                                     US 10,755,241 B2
                              17                                                                18
FIG . 46. The offline distribution module 72 removes the been restored is the same private key 79 that was previously
private keys 79 of the Bitcoin address 80 of the vault 64. The associated with the Bitcoin address. Only upon confirmation
offline distribution module 72 also removes the private key from the block chain will it be possible to transfer the value
79 of the Bitcoin address 80 within the local storage 56 .     from the vault 64 to the local register 60 .
   As shown in FIG . 48 , a local register 60 includes a 5 The local controller 58 restores the respective value of the
plurality of wallets 42 , one of which is shown . The wallet 42    Bitcoin addresses 76 and 78 in the vault 64 to the Bitcoin
has a plurality of Bitcoin addresses 74 , 76 and 78 associated     addresses 76 and 78 in the wallet 42. Because the values
therewith . Each Bitcoin address 74 , 76 and 78 has a respec       have been restored to the Bitcoin addresses 76 and 78 in the
tive value and a respective private key. The local controller      wallet 42 they are usable for transacting with other users .
58 transfers the entire value of the Bitcoin addresses 76 and 10     FIGS . 51a to 51d illustrate the use of a “ hot ” wallet in
78 into the vault 64. The value relating to the Bitcoin address    combination with “ cold storage ” . As shown in FIG . 51a , the
74 is not transferred into the vault 64. The local controller 58   wallet 42 has the Bitcoin addresses 74 , 76 , 78 and a further
calculates the total value of the Bitcoin addresses 76 and 78      Bitcoin address 98 , each having a respective value associ
that have been transferred into the vault 64 and records the       ated therewith . The local storage 56 has first, second and
total value in the local storage 56 in association with the 15 third Bitcoin addresses 80A to 80C for first, second and third
Bitcoin address 80 .                                           vaults 64A to 64C , respectively . The Bitcoin addresses 76
   As shown in FIG . 49 , following removal of the value of and 78 form a first transfer set that is selected for cold
the Bitcoin addresses 76 and 78 within the wallet 42 , the         storage . The Bitcoin addresses 74 and 98 form a first
value of the Bitcoin addresses 76 and 78 are only held within      transacting set . The values of the Bitcoin addresses 76 and
the vault 64 and the local storage 56. The private key 79 is 20 78 of the first transfer set are transferred into the first vault
only held in a split and encrypted form at the distributed 64A , as represented by “ Value” in the first vault 64A .
locations where the offline distribution module 72 in FIG . 46    The private key of the Bitcoin address 80A of the first
has distributed them to . Unless access can be gained to the vault 64A is then transferred into the local storage 56 and is
private key 79 that has now been split and distributed , it is stored in association with the first Bitcoin address 80A . As
not possible to access the value of the Bitcoin addresses 76 25 hereinbefore described with reference to FIG . 46 , the private
and 78. It is now possible for a user to which the wallet 42 key of the Bitcoin address 80A in the local storage 56 is then
is registered to use the Bitcoin address 74 for transacting split and distributed . As hereinbefore described with refer
with another user via the wallet management module 44 in ence to FIGS . 47 and 48 , the private keys of the Bitcoin
FIG . 1B . The Bitcoin addresses 76 and 78 are not usable by address 80 and the value of the Bitcoin address 76 and 78 are
the wallet management module 44 for purposes of transact- 30 then removed . It is then not possible for a user of the wallet
ing with another user at this time because their values , 42 to use the Bitcoin address 76 and 78 for transacting with
within the wallet 42 , have been removed .                      another user . The user can still transact with another user
  FIG . 50 shows how the private keys of the vault 64 and          using the Bitcoin addresses 74 and 98 of the first transacting
the Bitcoin addresses 76 and 78 that were removed in FIG .         set because their values are still associated with them within
46 are restored . Components that are provided for restora- 35 the wallet 42 .
tion include a plurality of restoration interfaces 82 , 84 and    FIG . 51b shows the Bitcoin addresses 76 and 78 within
86 , one or more decryption algorithms 88 , 90 and 92 and an the wallet 42 with their values removed and the Bitcoin
assembler 94. The holder of the first encrypted code (En address 80A within the local storage 56 with its private key
crypted Code 1 ) is called upon to enter the encrypted code removed . The private key of the Bitcoin address 80B of
into the restoration interface 82. The restoration interface 82 40 second vault 64B is transferred into the local storage 56 and
may for example be a web page with a field for entry of the associated with the second Bitcoin address 80B within the
first encrypted code . Alternatively, the restoration interface    local storage 56. The private key of the second Bitcoin
82 may be an application programmable interface (API ) and         address 80B in the local storage 56 is split and distributed
the first encrypted code can be entered into the API with or       and then removed from the local storage 56. The Bitcoin
without human involvement.                                    45 address 98 is selected as part of a second transfer set of one
  In the given example , the second , third, fifth and sixth or more Bitcoin addresses . The value of the Bitcoin address
encrypted codes are not received at this time . The fourth and 98 is transferred from the wallet 42 into the second vault
seventh encrypted codes are received through the restoration       64B , as represented by “ Value ” in the second vault 64B . The
interfaces 84 and 86 , similar to the first encrypted code.        value of the Bitcoin address 98 within the wallet 42 is thus
  The decryption algorithm 88 decrypts the first encrypted 50 removed . The user of the wallet 42 can now not use the
code (Encrypted Code 1 ) into the first code (Code 1 ) . In the    Bitcoin address 98 for purposes of transacting with another
given example, the decryption algorithms 90 and 92 decrypt         user because the value of the Bitcoin address 98 has been
the fourth and seventh encrypted codes ( Encrypted Code 4          removed from the wallet 42. The Bitcoin address 74 forms
and Encrypted Code 7 ) into the fourth and seventh codes           part of a second transacting set that may include one or more
(Code 4 and Code 7 ) respectively. In the given example, 55 another
three codes are the minimum number of codes that are
                                                            Bitcoin user
                                                                    addresses
                                                                         .
                                                                              that can be used for transacting with
required in order to reassemble the private key 79. The              FIG . 51c shows the Bitcoin address 98 having its value
minimum number of codes required for reassembly in FIG . removed and the second Bitcoin address 80B within the
48 is thus less than the total number of codes into which