Pages:
Author

Topic: Inputs.io | Instant Payments, Offchain API, Secure Wallet, 235k+ BTC transferred - page 60. (Read 158152 times)

rme
hero member
Activity: 756
Merit: 504
Hi TradeFortress,
I had been a couple of days watching Inputs.io, the new design and the new password hashing.

Dealing with passwords is a very complex job, but here it goes my suggestion.

The main targets of this suggestion is that if someone can sniff the trafic (with HTTPS this is not possible) he cant see the password, the sha512 hash or the 2FA.

If the user has not enabled 2FA:
The login form:
      - Email Input (type text)
      - Password Input (type text)
      - Server Token Input (type hidden)
      - Client Token Input (type hidden)

When the user clicks Login Button:
      - Using javascript and sha512.js, the email, the password, the server token and the client token are concatenated and hashed.
      - Note: The Server token is a random string that the server provides in each petition (can be rand() or something).
      - Note: The Client token is empty and the client browser fills it with a javascript random function on form submit.

      So, your client hashes all the things (email, password, server token, client token), and sends to the server this values:
            - Hash (the sha512 generated)
            - Client Token (is generated by the browser using random function)
            - Email (needed to find the user)

Summary:
If you sniff the conecction you only get a sha512 hash (that is different every login), the email and a Client Token that is just a random number.
You would have to sniff the Server response to get the server token and also the client response to complete the hash.

How the server validates the user:

Code:
//first you need to query the mysql user row WHERE email = the email
if($_GET['hash'] == sha512($_GET['email'].$query['password'].$query['server_token'].$_GET['client_token']))


If the user has enabled 2FA:
The login form:
      - Email Input (type text)
      - Password Input (type text)
      - Server Token Input (type hidden)
      - 2FA Input (type text)

The same as above, replacing client token with 2FA code, as the 2FA code is not sended to the server (only the resulting sha512 hash) if someone sniffs the conection he would only get a random sha512 hash.

He would not get even the 2FA code.

Code:
//first you need to query the mysql user row WHERE email = the email
//Also replace $query['2FA'] with the supposed 2FA for this user at this time
if($_GET['hash'] == sha512($_GET['email'].$query['password'].$query['server_token'].$query['2FA']))




Note: You can first hash the password and then concatenate to the other inputs and then hash again, this way the password goes also hashed.
Also you can also hash the email (in the database the email had to be in plain, but the user can send the email also hashed)
vip
Activity: 1316
Merit: 1043
👻
vip
Activity: 1316
Merit: 1043
👻
I got a transfer with 55confirms still unconfirmed lol Smiley
Credited.
hero member
Activity: 672
Merit: 501
I withdrawed 1.4325556 BTC from coinlenders during the downtime. They haven't arrived at my inputs.io account yet.
My nickname is the same on both sites and Bitcointalk. The withdraw is listed on coinlenders in my account.

Can you take a look at that please?

I think if it's a bitcoind bug we will see some delayed transactions while they fix it and while it catches up with the blockchain.

Although CL -> Inputs should be off the chain.
newbie
Activity: 33
Merit: 0
I withdrawed 1.4325556 BTC from coinlenders during the downtime. They haven't arrived at my inputs.io account yet.
My nickname is the same on both sites and Bitcointalk. The withdraw is listed on coinlenders in my account.

Can you take a look at that please?
vip
Activity: 1316
Merit: 1043
👻
Site is back.

Will post a full update soon and what we're doing to prevent this from happening again.

What exactly did happen?

We've encountered a deadlock bug with bitcoind. We're working with the bitcoin developers in tracking it down and getting it fixed.
hero member
Activity: 672
Merit: 501
I got a transfer with 55confirms still unconfirmed lol Smiley
legendary
Activity: 1008
Merit: 1000
Site is back.

Will post a full update soon and what we're doing to prevent this from happening again.

What exactly did happen?
vip
Activity: 1316
Merit: 1043
👻
Site is back.

Will post a full update soon and what we're doing to prevent this from happening again.
hero member
Activity: 672
Merit: 501
I don't mean to complain but man. This is VERY annoying.
newbie
Activity: 33
Merit: 0
"instant"

Would be happy too, to get access
hero member
Activity: 672
Merit: 501
TF......

I would like to gain access to my coins please......... Smiley
hero member
Activity: 672
Merit: 501
It appears to be "broken" I can login, finally, it's very very slow and now my wallet is stuck in "NaN BTC" mode ie; nil.
vip
Activity: 1316
Merit: 1043
👻
Account security upgrade process

We're upgrading the security of Inputs.io to make it more resistant to attacks even if our web facing server was compromised. Inputs.io is not compromised at all, this is to make Inputs even more secure. Smiley

Login (if you are already signed in, log out and relogin) to complete the account upgrade process.

Thanks!
vip
Activity: 1316
Merit: 1043
👻
newbie
Activity: 5
Merit: 0
Any chance of a stats page? I'm most interested in watching off the chain transactions and shared wallet size!
Yes, but that's quite low on the priority list.

hero member
Activity: 994
Merit: 507
Any chance of a stats page? I'm most interested in watching off the chain transactions and shared wallet size!
hero member
Activity: 784
Merit: 501
Looks great. I will consider using this for small payments (I won't use any online service to keep serious amounts of coins).

Would be nice that when sending an amount for the total of the wallet the fee is deducted automatically and you see the max. withdrawable amount so you don't have to use a calculator.

BTW is there also going to be an Android app?
vip
Activity: 1316
Merit: 1043
👻
Very cool site.

A feature that I think would be popular is having a unique inputs.io address for each user. Then inputs.io users can have short little addresses for sending BTC to each other as long as they both have accounts. (Also helps publicity because a side effect will be that people will put input.io addresses in their signature)

I'd love something short like: "h8be"
Then I can say: sent payment to input.io user h8be!

Keep up the good work.
Implemented usernames!

Mine is gladoscc / https://inputs.io/u/gladoscc Smiley
hero member
Activity: 994
Merit: 507
Very cool site.

A feature that I think would be popular is having a unique inputs.io address for each user. Then inputs.io users can have short little addresses for sending BTC to each other as long as they both have accounts. (Also helps publicity because a side effect will be that people will put input.io addresses in their signature)

I'd love something short like: "h8be"
Then I can say: sent payment to input.io user h8be!

Keep up the good work.
Pages:
Jump to: