Bitcoin Forum
May 08, 2024, 12:39:48 AM *
News: Latest Bitcoin Core release: 27.0 [Torrent]
 
   Home   Help Search Login Register More  
Pages: [1]
  Print  
Author Topic: Try out "Memory Key" - a tool to help generate passwords (suitable for all ages)  (Read 1696 times)
CIYAM (OP)
Legendary
*
Offline Offline

Activity: 1890
Merit: 1078


Ian Knowles - CIYAM Lead Developer


View Profile WWW
December 31, 2012, 06:07:00 AM
Last edit: December 31, 2012, 08:20:54 AM by CIYAM Pty. Ltd.
 #1

After some brainstorming about this whole difficult passphrase and keeping it safe I have come up with the following:

http://ciyam.org/memory_key.html

Please note that the form doesn't actually post anything to my or any other website and of course it can be run offline.

Smiley

R21L03A251E16Y72D03E13O122X21R19F31Z34

With CIYAM anyone can create 100% generated C++ web applications in literally minutes.

GPG Public Key | 1ciyam3htJit1feGa26p2wQ4aw6KFTejU
Advertised sites are not endorsed by the Bitcoin Forum. They may be unsafe, untrustworthy, or illegal in your jurisdiction.
1715128788
Hero Member
*
Offline Offline

Posts: 1715128788

View Profile Personal Message (Offline)

Ignore
1715128788
Reply with quote  #2

1715128788
Report to moderator
CIYAM (OP)
Legendary
*
Offline Offline

Activity: 1890
Merit: 1078


Ian Knowles - CIYAM Lead Developer


View Profile WWW
December 31, 2012, 06:12:30 AM
 #2


With CIYAM anyone can create 100% generated C++ web applications in literally minutes.

GPG Public Key | 1ciyam3htJit1feGa26p2wQ4aw6KFTejU
John (John K.)
Global Troll-buster and
Legendary
*
Offline Offline

Activity: 1288
Merit: 1226


Away on an extended break


View Profile
December 31, 2012, 06:53:33 AM
 #3

OMG Malaysia's actually listed!  Shocked
I noticed that a single change in the options does not change the entire code generated - i.e. 'avalanche effect'. Maybe V2 will impose elements like this? It's easy to identify the code as being generated by your website currently, and a bruteforce might be possible.
CIYAM (OP)
Legendary
*
Offline Offline

Activity: 1890
Merit: 1078


Ian Knowles - CIYAM Lead Developer


View Profile WWW
December 31, 2012, 07:00:32 AM
 #4

OMG Malaysia's actually listed!  Shocked

Yup - I have been there (at this stage it is a very personalised implementation although I have put some things in that are not from my real life).

I noticed that a single change in the options does not change the entire code generated - i.e. 'avalanche effect'. Maybe V2 will impose elements like this? It's easy to identify the code as being generated by your website currently, and a bruteforce might be possible.

Yup - the script could be improved (this was just a sneak peek really to get some feedback) and of course the key could always be hashed.

In regards to the brute forcing please check out just how many options there already are (the # of combinations possible is already huge and of course those options with less than 100 entries could be expanded so that it ends being equivalent to a traditional 12 character password) - also note that I plan to use this in combination with a small traditional password (or PIN) and to perform key hardening using an algorithm such a scrypt (and likely will be holding another competition to give it a real world *test*).

With CIYAM anyone can create 100% generated C++ web applications in literally minutes.

GPG Public Key | 1ciyam3htJit1feGa26p2wQ4aw6KFTejU
John (John K.)
Global Troll-buster and
Legendary
*
Offline Offline

Activity: 1288
Merit: 1226


Away on an extended break


View Profile
December 31, 2012, 07:16:57 AM
 #5

...
In regards to the brute forcing please check out just how many options there already are (the # of combinations possible is already huge and of course those options with less than 100 entries could be expanded so that it ends being equivalent to a traditional 12 character password) - also note that I plan to use this in combination with a small traditional password (or PIN) and to perform key hardening using an algorithm such a scrypt (and likely will be holding another competition to give it a real world *test*).


I know the combinations make it hard to bruteforce, but someone close to the target might have most of information handy - the region and event for example. Just another part of security I would say.  Cheesy

Another feature I would suggest is the use of icons/photos as question choices to help facilitate memory retention. Seems easier for older people where their memory is like a sieve.
CIYAM (OP)
Legendary
*
Offline Offline

Activity: 1890
Merit: 1078


Ian Knowles - CIYAM Lead Developer


View Profile WWW
December 31, 2012, 07:26:52 AM
Last edit: December 31, 2012, 07:41:14 AM by CIYAM Pty. Ltd.
 #6

I know the combinations make it hard to bruteforce, but someone close to the target might have most of information handy - the region and event for example. Just another part of security I would say.  Cheesy

Of course a big part of the strength of a "memory key" must be that it is derived from an event that is very personal (i.e. don't pick "where was I on 9/11?" as the "hint" you would keep written down to reconstruct your key but instead pick something like "what was the color of that crazy dog that I threw a rock at?"). Even better use an event that *only* you know about (could even be one that happened in a dream or nightmare).

Another feature I would suggest is the use of icons/photos as question choices to help facilitate memory retention. Seems easier for older people where their memory is like a sieve.

Yup - indeed I was thinking along the same lines (in another thread) - I think if others are interested in working on this then I might create a project for it on CIYAM Open and help fund it.

Even elderly people with early dementia typically can remember childhood and adolescent memories quite well (so generally it would be a good idea for the more senior end users to tap into their older more stable memories).

With CIYAM anyone can create 100% generated C++ web applications in literally minutes.

GPG Public Key | 1ciyam3htJit1feGa26p2wQ4aw6KFTejU
mc_lovin
Legendary
*
Offline Offline

Activity: 1190
Merit: 1000


www.bitcointrading.com


View Profile WWW
December 31, 2012, 08:29:46 AM
 #7

I like it, you should allow the user to throw in an extra blob of text to input though to make it more secure. 

P.S.: I don't see Canada in there!  Cheesy
CIYAM (OP)
Legendary
*
Offline Offline

Activity: 1890
Merit: 1078


Ian Knowles - CIYAM Lead Developer


View Profile WWW
December 31, 2012, 08:42:50 AM
 #8

I like it, you should allow the user to throw in an extra blob of text to input though to make it more secure.  

Thanks - suggestion noted (and also I think that the last select could have quite a lot more added to it).

Other ideas I've also had were to include things like ISBN #'s for books or product codes (for DVDs, etc.) which would be included in some sort of bundled DB (as it needs to be used "offline") to try and make having to add anything "manually" hopefully unnecessary.

P.S.: I don't see Canada in there!  Cheesy

Sorry - haven't been there (yet) - but if we do end up starting up a project for this that will be right up there on the list!

With CIYAM anyone can create 100% generated C++ web applications in literally minutes.

GPG Public Key | 1ciyam3htJit1feGa26p2wQ4aw6KFTejU
CIYAM (OP)
Legendary
*
Offline Offline

Activity: 1890
Merit: 1078


Ian Knowles - CIYAM Lead Developer


View Profile WWW
December 31, 2012, 09:42:02 AM
Last edit: December 31, 2012, 10:05:02 AM by CIYAM Pty. Ltd.
 #9

Just worked out a great way for being able to narrow your time down to a quarter hour (rather than just picking morning or afternoon)- find a photo from one of your holidays where something you remember clearly happened either just before or afterwards (but was not documented in any way) and use the time that the photo was taken.

The hint would then be a clue to help you find the photo (so you can be sure to get be able to get the time and month exact) - even if someone worked out the photo the photo itself won't really give away anything other than the time (without having "been there").

Smiley

With CIYAM anyone can create 100% generated C++ web applications in literally minutes.

GPG Public Key | 1ciyam3htJit1feGa26p2wQ4aw6KFTejU
CIYAM (OP)
Legendary
*
Offline Offline

Activity: 1890
Merit: 1078


Ian Knowles - CIYAM Lead Developer


View Profile WWW
December 31, 2012, 12:50:58 PM
 #10

A happy new years to all fellow Aussie Bitcoiners!

Let's hope that 2013 will bring us a local exchange for AUD that can be relied upon and has *volume*.

Smiley

With CIYAM anyone can create 100% generated C++ web applications in literally minutes.

GPG Public Key | 1ciyam3htJit1feGa26p2wQ4aw6KFTejU
greyhawk
Hero Member
*****
Offline Offline

Activity: 938
Merit: 1009


View Profile
December 31, 2012, 04:58:18 PM
 #11

Huh, this works pretty well

Phinnaeus Gage
Legendary
*
Offline Offline

Activity: 1918
Merit: 1570


Bitcoin: An Idea Worth Spending


View Profile WWW
December 31, 2012, 05:06:01 PM
 #12

Another example, with the results after the equal sign (=) and in bold would be mine.

GENDER = M
NUMBER of Children and their sex = 3G2B (2 by marriage, 3 via Oops!)
ADDRESS (# + 1st Letter) = 406W
SS1 or SS1R (R=reversed) (the first 3 digits of a US SS #)
SS2 or SS2R (R=reversed) (the middle 2 digits of a US SS #) SS2R = 27
SS3 or SS3R (R=reversed) (the last 4 digits of a US SS #)
Birthday (using the first letter of the month and no 0's with exception of the year available in various formats for other countries) = M41960
BIBLE Verse = J11 (John 1:1)
YOUR Initials = BKJ (J = Jr.)

Thus, mine would be M3G2B406W27M41960J11BKJ
Gavin Andresen
Legendary
*
Offline Offline

Activity: 1652
Merit: 2216


Chief Scientist


View Profile WWW
December 31, 2012, 07:38:16 PM
 #13

How will you know if people tend to pick the same types of events, and, therefore, create big non-random clusters of choices that might be easily brute-forced?

Taking an idea from https://gist.github.com/3840286...

.... you could store a small number of bitcoin at private key = SHA256(memory_key), store the bulk of bitcoin at scrypt(Name+PIN+memory_key), and tell users to choose a new memory key if the SHA256(memory_key) coins are either ever spent or if that key ever gets funds from somebody else.

Because that means somebody else chose the same memory key.



How often do you get the chance to work on a potentially world-changing project?
jago25_98
Hero Member
*****
Offline Offline

Activity: 900
Merit: 1000


Crypto Geek


View Profile WWW
January 01, 2013, 12:33:44 AM
 #14

Great to see.

For added bonus, make it for an event you would like to happen. You're basically creating a sigal, something from magick. Perhaps it will come true?! ;-)

Bitcoiner since the early days. Crypto YouTube Channel: Trading Nomads | Analyst | News Reporter | Bitcoin Hodler | Support Freedom of Speech!
CIYAM (OP)
Legendary
*
Offline Offline

Activity: 1890
Merit: 1078


Ian Knowles - CIYAM Lead Developer


View Profile WWW
January 01, 2013, 01:19:33 AM
 #15

How will you know if people tend to pick the same types of events, and, therefore, create big non-random clusters of choices that might be easily brute-forced?

Of course that is probably the biggest weakness of this type of system (and despite warnings some people will just go ahead and use "where was I on 9/11") although I think perhaps a small amount of training would possibly help a lot.

.... you could store a small number of bitcoin at private key = SHA256(memory_key), store the bulk of bitcoin at scrypt(Name+PIN+memory_key), and tell users to choose a new memory key if the SHA256(memory_key) coins are either ever spent or if that key ever gets funds from somebody else.

Because that means somebody else chose the same memory key.

Good suggestion.

With CIYAM anyone can create 100% generated C++ web applications in literally minutes.

GPG Public Key | 1ciyam3htJit1feGa26p2wQ4aw6KFTejU
BkkCoins
Hero Member
*****
Offline Offline

Activity: 784
Merit: 1009


firstbits:1MinerQ


View Profile WWW
January 01, 2013, 07:44:33 AM
 #16

If you made this web page so you could seed it eg. when you access it (or when saved somehow) each choice is randomized then you could use this as a two-factor authentication. You would need the saved web page plus the knowledge to gain access since every other person should have a different randomized version of the page.

K1773R
Legendary
*
Offline Offline

Activity: 1792
Merit: 1008


/dev/null


View Profile
January 01, 2013, 07:46:16 AM
 #17

How will you know if people tend to pick the same types of events, and, therefore, create big non-random clusters of choices that might be easily brute-forced?

Taking an idea from https://gist.github.com/3840286...

.... you could store a small number of bitcoin at private key = SHA256(memory_key), store the bulk of bitcoin at scrypt(Name+PIN+memory_key), and tell users to choose a new memory key if the SHA256(memory_key) coins are either ever spent or if that key ever gets funds from somebody else.

Because that means somebody else chose the same memory key.



nice one Smiley

[GPG Public Key]
BTC/DVC/TRC/FRC: 1K1773RbXRZVRQSSXe9N6N2MUFERvrdu6y ANC/XPM AK1773RTmRKtvbKBCrUu95UQg5iegrqyeA NMC: NK1773Rzv8b4ugmCgX789PbjewA9fL9Dy1 LTC: LKi773RBuPepQH8E6Zb1ponoCvgbU7hHmd EMC: EK1773RxUes1HX1YAGMZ1xVYBBRUCqfDoF BQC: bK1773R1APJz4yTgRkmdKQhjhiMyQpJgfN
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!