Bitcoin Forum
April 26, 2024, 12:22:27 PM *
News: Latest Bitcoin Core release: 27.0 [Torrent]
 
   Home   Help Search Login Register More  
Pages: [1]
  Print  
Author Topic: [OFFLINE] DjsWallet - BETA - BIP32 Based JavaScript Wallet - Multiple Currencies  (Read 7126 times)
JayCoin (OP)
Sr. Member
****
Offline Offline

Activity: 409
Merit: 251


Crypt'n Since 2011


View Profile WWW
August 27, 2014, 04:03:10 AM
Last edit: March 13, 2015, 01:47:51 PM by JayCoin
 #1

    - Hello Everyone -

    Looking for Beta testers of a new BIP32 Based JavaScript Wallet.

DjsWallet

(dee-jays-wallet)

Deterministic javascript Wallet

Now With Full Namecoin support including name operations


Wallet is based on a customized version of bitcoinjs-lib which you can see here: https://github.com/p2pmining/bitcoinjs-lib

Private Keys could be reconstructed from repository library, master key and password. (Not easily as of now).

This wallet currently supports Bitcoin,Namecoin,Litecoin,Devcoin,Dogecoin,iXcoin and i0coin. (More can/will be added. Send me suggestions and why)

Only advanced browsers are supported. (IE 11+, Chrome, Firefox).

Deterministic address generation so no need to backup wallets.

WARNING: I CAN NOT RECOVER KEYS OR PASSWORDS! BETA! PRINT OUT KEY AND KEEP SAFE!

Use only for testing with small amounts of currency value.

You can try it out at https://djswallet.com/wallet.php  

Please Post Bugs And Suggestions

Also looking for sponsors and partners. PM me.

Coming Soon:
  • Formating
  • Message Signing
  • QRCode Support
  • Custom Transactions
  • Automatic updating of transactions and balances
  • Detailed Transaction Information
  • Instructions / FAQ / General Info
  • Market Prices

Bugs:
  • Code clean up (On going...)
  • does not clear old unconfirmed transactions
  • does not wait for 100 confirmations on mined coins before trying to spend them
  • can't add tag to change addresses
  • can't add tag to newly generated addresses
  • address table overflows sometimes

USE AT YOUR OWN RISK. I CAN NOT BE RESPONSIBLE FOR LOST OR STOLEN COINS. PLEASE DON"T USE WITH ANY LARGE MONETARY VALUE.

FAQ

Q: What is a hierarchal deterministic wallet?
A: It is a “crypto-currency “ wallet that generates all private and public keys from a single seed and is organized into a tree structure which allows the entire or partial sharing of the wallet with different systems. See the BIP0032 wiki for more detail. https://github.com/bitcoin/bips/blob/master/bip-0032.mediawiki

Q: What is the JavaScript part?
A: The JavaScript is the scripting language built into all modern browsers that the wallet is written in. All of the wallet cryptographic functions are run in the browser. Only transaction data is sent to and retrieved from our servers along with a hash of the seed data. This hash acts as a user id to prevent spamming of the system and is registered with our servers when creating the seed.

Q: How can I recover my password?
A: Sorry, no password recovery functions are available. We do not store or control any usable part of your wallet. It is up to you to remember and secure your password.

Q: How can I recover my seed key?
A: Sorry, again. Make sure you bookmark your seed key and print a copy of it too. Your seed key and password contain all the data used to generate your entire wallet.

Q: What if your site shuts down? How will I recover my wallet?
A: The underlying code is open source and can be used to generate your private keys and import them into another client. We use a modified version of bitcoinjs-lib and it can be downloaded here:https://github.com/p2pmining/bitcoinjs-lib.

Q: How does the wallet know my password is correct?
A: Key data is hashed with the password and part of that hash is embedded into the key and acts as password verification.

Q: What crypto-currencies does it the wallet support?
A: Currently Bitcoin, Namecoin, Litecoin, Devcoin, Dogecoin, Ixcoin and I0coin are supported. Additional blockchains will be added when requested by enough users. Only Bitcoin,Litecoin and Dogecoin currently have official BIP 0032 version ids. Other coins version ids have been created by us to allow BIP 0032 functionality.


[/list]

Hello There!
1714134147
Hero Member
*
Offline Offline

Posts: 1714134147

View Profile Personal Message (Offline)

Ignore
1714134147
Reply with quote  #2

1714134147
Report to moderator
1714134147
Hero Member
*
Offline Offline

Posts: 1714134147

View Profile Personal Message (Offline)

Ignore
1714134147
Reply with quote  #2

1714134147
Report to moderator
1714134147
Hero Member
*
Offline Offline

Posts: 1714134147

View Profile Personal Message (Offline)

Ignore
1714134147
Reply with quote  #2

1714134147
Report to moderator
Bitcoin mining is now a specialized and very risky industry, just like gold mining. Amateur miners are unlikely to make much money, and may even lose money. Bitcoin is much more than just mining, though!
Advertised sites are not endorsed by the Bitcoin Forum. They may be unsafe, untrustworthy, or illegal in your jurisdiction.
1714134147
Hero Member
*
Offline Offline

Posts: 1714134147

View Profile Personal Message (Offline)

Ignore
1714134147
Reply with quote  #2

1714134147
Report to moderator
1714134147
Hero Member
*
Offline Offline

Posts: 1714134147

View Profile Personal Message (Offline)

Ignore
1714134147
Reply with quote  #2

1714134147
Report to moderator
virtualmaster
Hero Member
*****
Offline Offline

Activity: 504
Merit: 500



View Profile
August 31, 2014, 09:37:49 AM
 #2

- Hello Everyone -

Looking for Alpha/Beta testers of a new BIP32 Based JavaScript Wallet.

DjsWallet

(dee-jays-wallet)

Deterministic javascript Wallet

Wallet is based on a customized version of bitcoinjs-lib which you can see here: https://github.com/p2pmining/bitcoinjs-lib

Private Keys could be reconstructed from repository library, master key and password. (Not easily as of now).

This wallet currently supports Bitcoin,Namecoin,Litecoin,Devcoin,Dogecoin,iXcoin and i0coin. (More can/will be added. Send me suggestions and why)

Only advanced browsers are supported. (IE 11+, Chrome, Firefox).

Deterministic address generation so no need to backup wallets.

WARNING: I CAN NOT RECOVER KEYS OR PASSWORDS! ALPHA! PRINT OUT KEY AND KEEP SAFE!

Use only for testing with small amounts of currency value.

You can try it out at https://djswallet.com/wallet.php  (Ignore certificate warning. Self signed cert for now)

Please Post Bugs And Suggestions

Also looking for sponsors and partners. PM me.

Coming Soon:
  • Formating
  • Message Signing
  • QRCode Support
  • Custom Transactions
  • Automatic updating of transactions and balances
  • Detailed Transaction Information
  • Instructions / FAQ / General Info
  • Market Prices

Bugs:
  • Code clean up (On going...)
  • does not clear old unconfirmed transactions
  • does not wait for 100 confirmations on mined coins before trying to spend them
  • can't add tag to change addresses
  • can't add tag to newly generated addresses
  • address table overflows sometimes

USE AT YOUR OWN RISK. I CAN NOT BE RESPONSIBLE FOR LOST OR STOLEN COINS. PLEASE DON"T USE WITH ANY LARGE MONETARY VALUE.

FAQ

Q: What is a hierarchal deterministic wallet?
A: It is a “crypto-currency “ wallet that generates all private and public keys from a single seed and is organized into a tree structure which allows the entire or partial sharing of the wallet with different systems. See the BIP0032 wiki for more detail. https://github.com/bitcoin/bips/blob/master/bip-0032.mediawiki

Q: What is the JavaScript part?
A: The JavaScript is the scripting language built into all modern browsers that the wallet is written in. All of the wallet cryptographic functions are run in the browser. Only transaction data is sent to and retrieved from our servers along with a hash of the seed data. This hash acts as a user id to prevent spamming of the system and is registered with our servers when creating the seed.

Q: How can I recover my password?
A: Sorry, no password recovery functions are available. We do not store or control any usable part of your wallet. It is up to you to remember and secure your password.

Q: How can I recover my seed key?
A: Sorry, again. Make sure you bookmark your seed key and print a copy of it too. Your seed key and password contain all the data used to generate your entire wallet.

Q: What if your site shuts down? How will I recover my wallet?
A: The underlying code is open source and can be used to generate your private keys and import them into another client. We use a modified version of bitcoinjs-lib and it can be downloaded here:https://github.com/p2pmining/bitcoinjs-lib.

Q: How does the wallet know my password is correct?
A: Key data is hashed with the password and part of that hash is embedded into the key and acts as password verification.

Q: What crypto-currencies does it the wallet support?
A: Currently Bitcoin, Namecoin, Litecoin, Devcoin, Dogecoin, Ixcoin and I0coin are supported. Additional blockchains will be added when requested by enough users. Only Bitcoin,Litecoin and Dogecoin currently have official BIP 0032 version ids. Other coins version ids have been created by us to allow BIP 0032 functionality.

Thanks for creating this interesting project and for implementing Namecoin support.
I tried with Mozilla for Bitcoin and Namecoin and superficially seems to work however I haven't done deeper tests.
Wallet creation works. Creating receive addresses and change addresses works.
Source code still not checked and transactions also not checked.

A small observation:
In the upper row it is
 DjsWallet    Home    Wallet    Discussion
When I am in the Wallet menu with generated or opened wallet(which takes a little bit time) and I change to discussions or Home menu the wallet will close which I find in contrast with the general expectations because you need to wait again  a lot if going back to wallet.
I would put instead open with a new tab by discussions without closing the wallet. Instead of home I would put Close wallet or Home(close wallet) to let know users what happens.
Thanks and waiting for further updates.

Calendars for free to print: 2014 Calendar in JPG | 2014 Calendar in PDF Protect the Environment with Namecoin: 2014 Calendar in JPG | 2014 Calendar in PDF
Namecoinia.org  -  take the planet in your hands
BTC: 15KXVQv7UGtUoTe5VNWXT1bMz46MXuePba   |  NMC: NABFA31b3x7CvhKMxcipUqA3TnKsNfCC7S
JayCoin (OP)
Sr. Member
****
Offline Offline

Activity: 409
Merit: 251


Crypt'n Since 2011


View Profile WWW
September 01, 2014, 09:13:32 PM
 #3

Thanks for the input.

In other News:

First Namecoin command completed OP_NAME_NEW

I was able to generate the first OP_NAME_NEW transaction with djswallet (in javascript console).

I then manually sent the raw transaction with namecoind

http://explorer.namecoin.info/tx/597370b632efb35d5ed554c634c7af44affa6066f2a87a88046532d4057b46f8

Do not use. Currently the random number used is not recorded and you will not be able to do the first update.

Hello There!
virtualmaster
Hero Member
*****
Offline Offline

Activity: 504
Merit: 500



View Profile
September 12, 2014, 07:46:52 PM
 #4

Thanks for integrating Namecoin support.
I am asking if the private keys are generated with the same method by Bitcoin and Namecoin only with different network parameter or you are using different methods.
If it would be the same method I guess the private keys would be the same by Bitcoin and Namecoin as it is the case by brain wallets also when generated from the same seed with the same method.

Calendars for free to print: 2014 Calendar in JPG | 2014 Calendar in PDF Protect the Environment with Namecoin: 2014 Calendar in JPG | 2014 Calendar in PDF
Namecoinia.org  -  take the planet in your hands
BTC: 15KXVQv7UGtUoTe5VNWXT1bMz46MXuePba   |  NMC: NABFA31b3x7CvhKMxcipUqA3TnKsNfCC7S
JayCoin (OP)
Sr. Member
****
Offline Offline

Activity: 409
Merit: 251


Crypt'n Since 2011


View Profile WWW
September 12, 2014, 08:33:13 PM
 #5

The seed used for generating the extended BIP32 key for each wallet is generated as so:

1. The user master key is hashed with the password using HMACsha256 twice. (byte 1 through 32 is used for the seed. Byte 0 is the Djswallet version byte and byte 33-36 is the password checksum. There is also the base58 checksum in there)
2. That data is then concatenated with the network name
3. That data is then used for the seed for the BIP32 key.

Each network will have different keys.

The Djswallet version byte will allow me to change the key format in the future and still work with current keys

Note: Don't use namecoin operations yet. The only thing that works is NEW NAME. FIRST UPDATE and UPDATE NAME are not working yet. The site is also still ugly.

Thanks for trying it out.

I think this will be the first web wallet with full Namecoin support.

Hello There!
virtualmaster
Hero Member
*****
Offline Offline

Activity: 504
Merit: 500



View Profile
September 12, 2014, 09:19:07 PM
 #6

The seed used for generating the extended BIP32 key for each wallet is generated as so:

1. The user master key is hashed with the password using HMACsha256 twice. (byte 1 through 32 is used for the seed. Byte 0 is the Djswallet version byte and byte 33-36 is the password checksum. There is also the base58 checksum in there)
2. That data is then concatenated with the network name
3. That data is then used for the seed for the BIP32 key.

Each network will have different keys.

The Djswallet version byte will allow me to change the key format in the future and still work with current keys

Note: Don't use namecoin operations yet. The only thing that works is NEW NAME. FIRST UPDATE and UPDATE NAME are not working yet. The site is also still ugly.

Thanks for trying it out.

I think this will be the first web wallet with full Namecoin support.
Thanks for the explanation.
I only tried until now the generating keys part but I would like to reproduce the same results as by other bip32 generators.
Comparing with the results with the results from http://bip32.org/ for Bitcoin I cannot see any coverage. Reproducing the results with different tools would be important.
Maybe I used wrong parameters. However I tried many variations by putting the BIP32 private key from your wallet in the derived private key field from bip32 without any coverage by the generated addresses. Any idea why or how could be reproduced the same addresses ?
Thanks.

Calendars for free to print: 2014 Calendar in JPG | 2014 Calendar in PDF Protect the Environment with Namecoin: 2014 Calendar in JPG | 2014 Calendar in PDF
Namecoinia.org  -  take the planet in your hands
BTC: 15KXVQv7UGtUoTe5VNWXT1bMz46MXuePba   |  NMC: NABFA31b3x7CvhKMxcipUqA3TnKsNfCC7S
JayCoin (OP)
Sr. Member
****
Offline Offline

Activity: 409
Merit: 251


Crypt'n Since 2011


View Profile WWW
September 13, 2014, 01:54:55 AM
 #7

To use on bip32.org site:

1. On the bip32.org click BIP32 Key

2. Cut and paste the BIP32 Private Key(which is under the wallet details tab) to the BIP32 Extended Key Field at bip32.org

3. Select the "External account i'th keypair: m/k'/0/i" path

4. Set Account k': 0

5. Set Keypair index(i) to the address index you need: 0 for the first receive address, 1 for the second, etc. (these are the Receive addresses)

6. For the change addresses Select the "Internal account i'th keypair: m/k'/1/i" path

7. Set Account k': 0

8. Set Keypair index(i) to the address index you need

bip32.org currently only supports Bitcoin,Litecoin and Dogecoin






Hello There!
virtualmaster
Hero Member
*****
Offline Offline

Activity: 504
Merit: 500



View Profile
September 13, 2014, 09:18:31 AM
 #8

To use on bip32.org site:

1. On the bip32.org click BIP32 Key

2. Cut and paste the BIP32 Private Key(which is under the wallet details tab) to the BIP32 Extended Key Field at bip32.org

3. Select the "External account i'th keypair: m/k'/0/i" path

4. Set Account k': 0

5. Set Keypair index(i) to the address index you need: 0 for the first receive address, 1 for the second, etc. (these are the Receive addresses)

6. For the change addresses Select the "Internal account i'th keypair: m/k'/1/i" path

7. Set Account k': 0

8. Set Keypair index(i) to the address index you need

bip32.org currently only supports Bitcoin,Litecoin and Dogecoin

Thanks.
I am trying to compare for Bitcoin now. It works.
The addresses generated by your wallet are identical with those from bip32.org.(for Bitcoin)

Calendars for free to print: 2014 Calendar in JPG | 2014 Calendar in PDF Protect the Environment with Namecoin: 2014 Calendar in JPG | 2014 Calendar in PDF
Namecoinia.org  -  take the planet in your hands
BTC: 15KXVQv7UGtUoTe5VNWXT1bMz46MXuePba   |  NMC: NABFA31b3x7CvhKMxcipUqA3TnKsNfCC7S
JayCoin (OP)
Sr. Member
****
Offline Offline

Activity: 409
Merit: 251


Crypt'n Since 2011


View Profile WWW
November 21, 2014, 04:38:48 PM
 #9

Namecoin functionallity is working. You can now NEW_NAME , FIRST_UPDATE, UPDATE_NAME within the Namecoin wallet. 

The transaction ledger display balances that are not correct. Should be fixed soon.

Jason

Hello There!
JayCoin (OP)
Sr. Member
****
Offline Offline

Activity: 409
Merit: 251


Crypt'n Since 2011


View Profile WWW
November 21, 2014, 08:05:22 PM
 #10

Fixed Namecoin Transaction Balance  Grin

Hello There!
yaago
Newbie
*
Offline Offline

Activity: 7
Merit: 0


View Profile
November 29, 2014, 09:37:29 PM
 #11

Quote from: JayCoin
Namecoin functionallity is working. You can now NEW_NAME , FIRST_UPDATE, UPDATE_NAME within the Namecoin wallet.
Fixed Namecoin Transaction Balance  Grin
Thank you Jason!  Smiley
mcrose
Member
**
Offline Offline

Activity: 98
Merit: 10

programming never gets boring...


View Profile WWW
February 02, 2015, 11:13:18 PM
 #12

great job  Grin

waiting for the 'backup wallet' button  Cheesy

BTC  1Hy6QnCCcXDNVfzNsCrkTYuthxfDWpxnxR / BLK BHs9P8f2CysvbsZMzjAyCUUKdKwUmHuYSy / PND PWJLxnGeGdXYY6L5A8FtBVwZDbacSW91ry / DASH XdYGkCgxynqovRQoigFnCN4QzJLJqXvRYp / LTC LSKddcbZwHBgGqmQ2muS7tKRxQWWk8oPXG / BTCD RHTvPGZUnazSJJCqe2N8REB9zYFxEqfHjm / DOGE DMaMevyQmbb51EpHBYnTAhTmcXK8gf4YKL / NOC NbSwBrTLbxr5cT62D7Z2S4UVHNk4jhLemE
mcrose
Member
**
Offline Offline

Activity: 98
Merit: 10

programming never gets boring...


View Profile WWW
February 17, 2015, 12:51:44 PM
 #13

hi

one issue:
when I login into my account, in the 'overview' tab balances remains 0 (zero) unless I got into the coin tab and press update

BTC  1Hy6QnCCcXDNVfzNsCrkTYuthxfDWpxnxR / BLK BHs9P8f2CysvbsZMzjAyCUUKdKwUmHuYSy / PND PWJLxnGeGdXYY6L5A8FtBVwZDbacSW91ry / DASH XdYGkCgxynqovRQoigFnCN4QzJLJqXvRYp / LTC LSKddcbZwHBgGqmQ2muS7tKRxQWWk8oPXG / BTCD RHTvPGZUnazSJJCqe2N8REB9zYFxEqfHjm / DOGE DMaMevyQmbb51EpHBYnTAhTmcXK8gf4YKL / NOC NbSwBrTLbxr5cT62D7Z2S4UVHNk4jhLemE
JayCoin (OP)
Sr. Member
****
Offline Offline

Activity: 409
Merit: 251


Crypt'n Since 2011


View Profile WWW
February 17, 2015, 02:23:51 PM
 #14

Still working on that.  The wallet currently doesn't grab the balances until the wallets tab is clicked.

By the way, Had to reboot server.  Will be a while until all the chains are caught up.

Hello There!
mcrose
Member
**
Offline Offline

Activity: 98
Merit: 10

programming never gets boring...


View Profile WWW
February 17, 2015, 02:49:26 PM
 #15

Still working on that.  The wallet currently doesn't grab the balances until the wallets tab is clicked.

By the way, Had to reboot server.  Will be a while until all the chains are caught up.

cool, so it could be removed (the balance info) and add another I guess

glad to see that are still working, I really like the site and hope I can move my litecoins in there so I can delete the blokchain in my hhdd and get some space back Cheesy

BTC  1Hy6QnCCcXDNVfzNsCrkTYuthxfDWpxnxR / BLK BHs9P8f2CysvbsZMzjAyCUUKdKwUmHuYSy / PND PWJLxnGeGdXYY6L5A8FtBVwZDbacSW91ry / DASH XdYGkCgxynqovRQoigFnCN4QzJLJqXvRYp / LTC LSKddcbZwHBgGqmQ2muS7tKRxQWWk8oPXG / BTCD RHTvPGZUnazSJJCqe2N8REB9zYFxEqfHjm / DOGE DMaMevyQmbb51EpHBYnTAhTmcXK8gf4YKL / NOC NbSwBrTLbxr5cT62D7Z2S4UVHNk4jhLemE
JayCoin (OP)
Sr. Member
****
Offline Offline

Activity: 409
Merit: 251


Crypt'n Since 2011


View Profile WWW
March 01, 2015, 07:28:22 AM
 #16

The server is going to go down for a few days.

If anyone needs help recovering a private key from your wallet key please post a request.

Thanks,

Jason

 

Hello There!
mcrose
Member
**
Offline Offline

Activity: 98
Merit: 10

programming never gets boring...


View Profile WWW
March 01, 2015, 06:56:44 PM
 #17

hi

well, I'm the first one! so please add me to the list

BTC  1Hy6QnCCcXDNVfzNsCrkTYuthxfDWpxnxR / BLK BHs9P8f2CysvbsZMzjAyCUUKdKwUmHuYSy / PND PWJLxnGeGdXYY6L5A8FtBVwZDbacSW91ry / DASH XdYGkCgxynqovRQoigFnCN4QzJLJqXvRYp / LTC LSKddcbZwHBgGqmQ2muS7tKRxQWWk8oPXG / BTCD RHTvPGZUnazSJJCqe2N8REB9zYFxEqfHjm / DOGE DMaMevyQmbb51EpHBYnTAhTmcXK8gf4YKL / NOC NbSwBrTLbxr5cT62D7Z2S4UVHNk4jhLemE
JayCoin (OP)
Sr. Member
****
Offline Offline

Activity: 409
Merit: 251


Crypt'n Since 2011


View Profile WWW
March 02, 2015, 05:57:42 AM
 #18

Before I take it off line I will add an area under each address that will show the private key that can be imported into a standard client

Hello There!
JayCoin (OP)
Sr. Member
****
Offline Offline

Activity: 409
Merit: 251


Crypt'n Since 2011


View Profile WWW
March 02, 2015, 06:55:04 PM
 #19

The WIF private key is now shown directly below the addresses within the wallet.

Please print out, or import into another wallet.  Send transaction is not working at this time. Current wallet site will be going off line on Friday 3/7/2015.

There will still be a way to get private keys after Friday with your wallet key, but it involves writing a script and using my fork of bitcoinjs-lib https://github.com/p2pmining/bitcoinjs-lib

Sorry for the inconvenience.

Hello There!
Pages: [1]
  Print  
 
Jump to:  

Powered by MySQL Powered by PHP Powered by SMF 1.1.19 | SMF © 2006-2009, Simple Machines Valid XHTML 1.0! Valid CSS!