Forum Home
    • Register
    • Login
    • Search
    • Recent
    • Tags
    • Popular

    [Dev] iOS Feathercoin Wallet Development

    Technical Development
    5
    11
    6767
    Loading More Posts
    • Oldest to Newest
    • Newest to Oldest
    • Most Votes
    Reply
    • Reply as topic
    Log in to reply
    This topic has been deleted. Only users with topic management privileges can see it.
    • Trancendence
      Trancendence last edited by

      Oh, are we not basing it on the BreadWallet fork via @AcidD https://github.com/FeatherWallet/featherwallet ?

      1 Reply Last reply Reply Quote 0
      • AcidD
        AcidD Moderators last edited by

        Either or. It’s only the neoscrypt implementation that needs to be done

        • FTC Block Explorer + API @ https://fsight.chain.tips
        • FTC Beer Money: 6x4LEQV88zRnBvZoH6ZNK6SeRxx4KiTyJs
        • FTC bech32 address: fc1q4tclm3cv4v86ez6el76ewmharexfapxhek5a03
        • BTC bech32 address: bc1qk8umuccapuafspk9e5szahvp0detafuzugv4ay

        1 Reply Last reply Reply Quote 0
        • Trancendence
          Trancendence last edited by

          Breadwallet have done a massive re-architecture and split out core code to breadwallet-core. luckily - this makes compare and contrast with BTC<->LTC super easy as loafWallet followed the move.

          See: https://github.com/breadwallet/breadwallet-core/compare/master...litecoin-foundation:master
          Now it’s a matter of understanding it… :thinking: :joy:

          In terms of NeoScrypt implementation, excuse my noobishness if I’m wrong in these assumptions:

          • Step 1. From what I’ve seen NeoScrypt should be able to be built without without neoscrypt_asm.S as the assembly code has been implemented in C as well :ok_hand:
          • Step 2. Looks like iOS can drop into native C which means that we can bind to the NeoScrypt lib…
          • Step 3. Profit :moneybag:

          Please correct me if my assumptions are wrong here…

          wrapper AcidD 2 Replies Last reply Reply Quote 1
          • wrapper
            wrapper Moderators @Trancendence last edited by

            @Trancendence

            In terms of NeoScrypt implementation, excuse my noobishness if I’m wrong in these assumptions:

            • Step 1. From what I’ve seen NeoScrypt should be able to be built without without neoscrypt_asm.S as the assembly code has been implemented in C as well :ok_hand:
            • Step 2. Looks like iOS can drop into native C which means that we can bind to the NeoScrypt lib…
            • Step 3. Profit :moneybag:

            Please correct me if my assumptions are wrong here…

            That’s my overall appreciation as well, but Acidd once said, “You make it sound so easy”

            1 Reply Last reply Reply Quote 0
            • J
              j0k3rhd last edited by

              If iOS app ever gets built, im more then willing to test the wallet out… :)

              Youtube Channel
              Http://youtube.com/geek88

              FTC Geek Spend - 6mgiiXDeqnwKjPZM8a2TG6X9YQKHfWJiAi

              1 Reply Last reply Reply Quote 1
              • wrapper
                wrapper Moderators last edited by

                The other issues are setting up the forks, for the block time and eHRC change over, that’s in chainparams.cpp in the qt wallet.

                1 Reply Last reply Reply Quote 0
                • AcidD
                  AcidD Moderators last edited by

                  Hey Guys

                  So I also have this
                  https://github.com/aciddude/loafwallet-ios-deprecated/commits/FeatherWallet

                  That’s the LTC wallet that will sync up until it finds a neoscrypt Block and then gets an “invalid block header” message.

                  Ghostlanders neoScrypt is here:
                  https://github.com/ghostlander/NeoScrypt

                  with iOS and Swift you can use C code directly. .h files stay the same and .c files become .m or .mm (cant remember) – apparently bread wallet is native swift.

                  The BreadWallet/Loaf Wallet files that talk about scrypt are

                  BRKey+BIP38.h
                  BRKey+BIP38.m < this has the entire scypt calculations in it… if you read the ghostlander neoScrypt white paper, and then look at this file, it will make a lot of sense.

                  The above i think is the base of their scrypt implementation and then they call it in different areas of the code.

                  I had some questions for ghostlander

                  AcidD
                  
                  hey ghost
                  
                  I was wondering if you could help me
                  
                  I need a little explaining on neoscrypt
                  
                  I need the chacha element of it explained
                  in relation to the original scrypt
                  scrypt is salsa20/8
                  So 8 rounds of Salsa20
                  NeoScrypt is salsa20/20 and chacha20/20
                  so 20 rounds of salsa20
                  i dont know where chacha comes into it
                  Do the blocks first go through 20 rounds of Salsa and then 20 rounds of chacha ?
                  
                  
                  
                  
                   ghostlander
                  
                  The order doesn’t matter. First extend 80 bytes input to 256 bytes with FastKDF, then Salsa, then ChaCha on the original FastKDF output, then XOR their results together, then FastKDF compress 256 bytes to 32 bytes output.
                  

                  I hope this helps.

                  • FTC Block Explorer + API @ https://fsight.chain.tips
                  • FTC Beer Money: 6x4LEQV88zRnBvZoH6ZNK6SeRxx4KiTyJs
                  • FTC bech32 address: fc1q4tclm3cv4v86ez6el76ewmharexfapxhek5a03
                  • BTC bech32 address: bc1qk8umuccapuafspk9e5szahvp0detafuzugv4ay

                  1 Reply Last reply Reply Quote 0
                  • AcidD
                    AcidD Moderators @Trancendence last edited by

                    @trancendence said in [Dev] iOS Feathercoin Wallet Development:

                    Breadwallet have done a massive re-architecture and split out core code to breadwallet-core. luckily - this makes compare and contrast with BTC<->LTC super easy as loafWallet followed the move.

                    See: https://github.com/breadwallet/breadwallet-core/compare/master...litecoin-foundation:master
                    Now it’s a matter of understanding it… :thinking: :joy:

                    In terms of NeoScrypt implementation, excuse my noobishness if I’m wrong in these assumptions:

                    • Step 1. From what I’ve seen NeoScrypt should be able to be built without without neoscrypt_asm.S as the assembly code has been implemented in C as well :ok_hand:
                    • Step 2. Looks like iOS can drop into native C which means that we can bind to the NeoScrypt lib…
                    • Step 3. Profit :moneybag:

                    Please correct me if my assumptions are wrong here…

                    This is great and would be the correct way to go so we get featherwallet-core

                    • FTC Block Explorer + API @ https://fsight.chain.tips
                    • FTC Beer Money: 6x4LEQV88zRnBvZoH6ZNK6SeRxx4KiTyJs
                    • FTC bech32 address: fc1q4tclm3cv4v86ez6el76ewmharexfapxhek5a03
                    • BTC bech32 address: bc1qk8umuccapuafspk9e5szahvp0detafuzugv4ay

                    1 Reply Last reply Reply Quote 2
                    • Trancendence
                      Trancendence last edited by Trancendence

                      Happy New Year from New Zealand!!

                      I’ve got a little news to kick the New Year off with a bang for FTC! :tada:
                      I’ve migrated all changes as added to the above repos tonight to MatthewHartstonge/featherwallet-core

                      Next up, I’ll be looking into binding the new lib into a fork of BreadWallet to make sure everything is happy, then the NeoScrypt implementation :smile:

                      D 1 Reply Last reply Reply Quote 3
                      • D
                        Davereplicant Regular Member @Trancendence last edited by

                        @trancendence fantastic work! Look forward to it. Happy new year!!!

                        1 Reply Last reply Reply Quote 1
                        • First post
                          Last post