[HN Gopher] Passwordle
___________________________________________________________________
Passwordle
Author : snthueoa
Score : 539 points
Date : 2022-02-16 16:13 UTC (6 hours ago)
(HTM) web link (rsk0315.github.io)
(TXT) w3m dump (rsk0315.github.io)
| samwillis wrote:
| My wife was looking at me when I opened this.
|
| "What are you grinning at?"
|
| I just locked my phone and put it face down on the table...
| jdthedisciple wrote:
| Why would you do that xD - I'd have explained it to her
| instead, doing what you did I'm not sure I'd be happy about as
| wifey ...
| qzw wrote:
| You see, if he does that when it's perfectly innocent, then
| his wife would be conditioned to ignore the behavior in the
| future. So when he's truly up to no good at some point, he
| won't be doing anything different than "normal". The man is
| probably some kind of criminal mastermind.
| samwillis wrote:
| Ha! Quite true, maybe poor attempt at humour stopping the
| story there.
|
| I actually did explain after that ellipsis, her response:
|
| "That's niche!"
|
| She is also well aware of what hashing is.
| pjerem wrote:
| Well, that's not "dolphins".
| c0nsumer wrote:
| Thinking about this a bit deeper, it's a pretty good system for
| explaining a bunch of technologies to others (those mentoring,
| etc). There's the reason why it's not possible to win via the
| front door, how basic client side JS apps are put together,
| basics of using debugging tools...
| dschulz wrote:
| the wordle craze is getting out of hand
| umvi wrote:
| You could do a version of this with a two-way function like
| base64 and it would still be possible but very difficult without
| programmatic guessing.
| TremendousJudge wrote:
| literally made me laugh out loud, well done
| ziml77 wrote:
| Same here! I love the absurdity of this one given the nature of
| cryptographic hash functions.
| delaaxe wrote:
| Me too but this can never be sold right
| core-utility wrote:
| What, Wired Magazine won't buy this for $3 Million?
| quantumite wrote:
| This is hilarious, I love it! I've already shared it half a dozen
| times...LOL!
| manceraio wrote:
| This is a masterpiece.
| rabuse wrote:
| Solved mine in Firefox, using the JS debugger, and viewing the
| scope of the randomPassword function. "nSQXy3Qwl3E<qV". All your
| wordle are belong to me!
| teatoli wrote:
| What exactly is this showing ?
| dskloet wrote:
| It's Wordle but it hashes your guess before applying hints.
| barbazoo wrote:
| It's a clone of the popular wordle game where you have to guess
| a word, except here, you have to guess a password but instead
| of telling you which characters of the password are correct it
| tells you which characters of the corresponding SHA-256 hash
| are, which makes this pretty much impossible to solve as the
| whole point of a hash are that small changes in the input (such
| as a different character in the password) results in big
| changes in the hash.
| __s wrote:
| You can make a rainbow table of the possible passwords &
| converge pretty quickly
|
| Don't hash passwords. Use pbkdf2 or some better alternative
| (I suggest pbkdf2 because it's widely implemented)
| FabHK wrote:
| > You can make a rainbow table of the possible passwords
|
| Can you? Here? 14 letters from an alphabet of around 90
| characters?
| __s wrote:
| There's a certain network getting through quite a few
| SHA256s, just give it a couple decades
| samwillis wrote:
| > pretty much impossible to solve
|
| Literal understatement of all time...
| meowface wrote:
| A quantum computer could potentially turn it from
| impossible to merely nearly impossible.
| travisgriggs wrote:
| They cynical side of me notes what a great phish this could be.
| People are inclined to enter passwords they regularly use just to
| see the visualization of their favorite passwords. With a little
| logging -> send home, you'd be harvesting passwords left and
| right.
| peanut_worm wrote:
| is a password very useful without any other identifier though?
| [deleted]
| hbn wrote:
| It's hosted on Github Pages which is just static file serving.
| And thanks to CORS restrictions I don't think you could phone
| home.
|
| Unless there's a workaround I'm not thinking of.
| heartbeats wrote:
| Can't you embed off-site images?
| Sohcahtoa82 wrote:
| The CORS policy is set by the server receiving the request,
| not the page/server sending it.
| jamespwilliams wrote:
| GitHub pages are served with Access-Control-Allow-Origin: *,
| so the SOP doesn't apply.
|
| They also don't set a CSP header, which opens up the
| opportunity to exfiltrate data by other means, e.g having the
| browser load an image on your.site/$password.jpg.
| hbn wrote:
| Ah right. Simple!
| grp000 wrote:
| Would the type of people amused by this have that weakness
| though?
| dezmou wrote:
| do I gain a bitcoin if I win ?
| Anunayj wrote:
| well if you manage to break sha256, sure you do ;)
| nathias wrote:
| maybe wordle is just a frontend for a human powered distributed
| dictionary attack
| d--b wrote:
| Just checked the source, I am so sad that the answer is actually
| random. Couldn't read the comments in Japanese though
| ledoge wrote:
| Also see dwordle, where you have to guess a function pointer:
| https://twitter.com/zhuowei/status/1482175505185095682
| susrev wrote:
| This is great fun. Thank you.
| dorianmariefr wrote:
| passWORDLE 1/1064 0 0
| https://rsk0315.github.io/playground/passwordle.html
|
| on Chrome, open Dev Tools and type `res` to get the password :)
| Thorentis wrote:
| Gee, I'm so glad somebody posted this so that I can cheat on a
| game that is not competitive and that I'm playing voluntarily
| and that has no bragging rights because of how niche it is.
| IncRnd wrote:
| Yes, but the point is to show that each password produces a
| sha256 not correlated to the sha256 of other passwords. That
| people actually tried to guess this way shows that not everyone
| is aware of the sha256's purpose.
| core-utility wrote:
| Hard mode: Password + Salt
| moltenguardian wrote:
| Someone more capable than I should make the final form of this:
| No green or yellow feedback is provided, but only the timing
| information used to calculate it. If cryptographers are serious
| about side-channel attacks, why not show off the danger using no-
| information Wordle?
|
| (edit: Absurdle was taken)
| p4bl0 wrote:
| Absurdle already exists:
| https://qntm.org/files/absurdle/absurdle.html ;)
| Narishma wrote:
| They should name it something else as absurdle is already
| taken.
|
| https://qntm.org/files/absurdle/absurdle.html
| brainfish wrote:
| An Absurdle exists[1], but instead of giving no hints it is
| adversarial, e.g. changing the secret word to dodge your
| guesses.
|
| [1] https://qntm.org/files/absurdle/absurdle.html
| SamPatt wrote:
| That's actually quite fun!
| dane-pgp wrote:
| Given that speed/timing is important, and the rules are
| designed to impede your progress, how about calling it Hurdle?
| circa wrote:
| I feel like Kramer with the moviefone number. "why don't you just
| tell me..."
| hbn wrote:
| I won*!
|
| *grabbed the expected hash from judgeEvent(), then made hash()
| return it
|
| edit: I see from other comments he actually pre-loaded
| randomPassword() with a debugger statement. Oh well!
| gfody wrote:
| this would be a good variant for Grant Sanderson to point his
| information theoretical solver at as a way to educate us on
| how/why sha256 leaks information that might be leveraged to crack
| a password, why to salt our hashes, etc.
| Kluny wrote:
| It's not hunter2, correcthorsebatterystaple, password123,
| swordfish, or my gmail password. Anyone got it?
| Drew_ wrote:
| This is begging for a hard mode option
| agys wrote:
| More or less how PoW works...
| moscovium wrote:
| I laughed. I can't wait for this to be used as a problem on some
| CS final.
| raesene9 wrote:
| nice, though I'm very disappointed the answer wasn't hunter2
| torgard wrote:
| Yeah same. From the source code, the answer is a random
| 14-character string, generated on load:
| function randomPassword() { let letters =
| 'abcdefghijklmnopqrstuvwxyzABCDEFGHIJKLMNOPQRSTUVWXYZ';
| let digits = '0123456789'; let punctuation =
| '!"#$%&\'()*+,-./:;<=>?@[\\]^_`{|}~'; let s =
| letters.repeat(7) + digits.repeat(4) + punctuation.repeat(3);
| let length = 14; let res = Array.from({length}, (()
| => s[randomInt(s.length)])).join(''); debugger; //
| douzo return res; }
| boothby wrote:
| I treated this the same way I started when solving absurdle,
| wordle, and hurdle: find the database, get crackin' on a
| decision tree. But, after estimating 1.2e17 possible
| passwords in the "database," it only feels fair to accept the
| invitation to use the debugger.
| DonHopkins wrote:
| I wish it accepted a given password from a url query
| parameter, so this url would work:
|
| https://rsk0315.github.io/playground/passwordle.html?passwor.
| ..
|
| Or the way bikeshed.com lets you configure the color with the
| domain name, like:
|
| https://bisque.bikeshed.com/
|
| Then they could monetize it by selling gullible suckers NFTs
| of urls pointing to Passwordle games of their passwords.
| cobbal wrote:
| Even better would be to link to the hash of the password,
| then there would be no way to guess.
| abdusco wrote:
| I tried in these classics in vain:
|
| - hunter2
|
| - password
|
| - correcthorsebatterystaple
| zwayhowder wrote:
| Literally my first guess.
| MichaelVangard wrote:
| I don't get it? Why would the answer be *******?
| wayne-li2 wrote:
| Wait, you can't see it either?
| TonyTrapp wrote:
| Because that would be hunter2 hilarious. I'd laugh my hunter2
| ass off!
| tetha wrote:
| I think you should watch your language, young person.
| sam0x17 wrote:
| For reference: https://knowyourmeme.com/memes/hunter2
|
| (I omitted the original bash.org link because they seem to
| be down at the moment!)
| marginalia_nu wrote:
| I've tried 123456, password, and secret, and I'm all out of
| ideas.
| VanillaIceWater wrote:
| takeda wrote:
| hint: it needs to be 14 characters
| remram wrote:
| So password123456 then?
| srinathkrishna wrote:
| I was expecting the hash to be MD5 to at least give people a
| chance! :D
| burke wrote:
| This would be kind of fun to write a solver for. You'd burn the
| first few guesses to get some positional constraints, then filter
| a rainbow table down to viable guesses. I'm not sure you'd be
| able to get a very good success rate in just 10 possible guesses
| though.
| onionisafruit wrote:
| If passwordle had a list of all possible solutions like wordle
| does, this would be doable.
| jfk13 wrote:
| If it had a list of all possible solutions, it'd take quite a
| bit more bandwidth to load...
| tetha wrote:
| If you can casually write an algorithm to break a modern
| cryptographic hash in 10 guesses... I would like to know.
| Because then I have to decide if I want to be a very good
| friend of you, once you get rich, or if I want to stay as far
| away from you as possible once the state intelligence agencies
| come after you.
| phire wrote:
| It's not a cryptographic break.
|
| It's simply a regular password cracking algorithm, but with
| instead of knowing the full hash, you only know a partial
| hash.
|
| It should be viable, even without rainbow tables. That's why
| plain, unsalted sha256 is very unsafe for password storage.
| FabHK wrote:
| It could work theoretically (the password contains around 90
| bits, and from each row you can glean, dunno, some 64 bits of
| info (64 characters that can be yellow, gray or green, so 101
| bits, but there are constraints on that - very unlikely that
| all characters are gray, for example)).
|
| In practice, I don't think it's computationally feasible. You
| can't keep all 2^90 = 10^27 possible solutions around in
| memory. Bitcoin does 200 EH/s, so 2e20 hashes/s. So the entire
| bitcoin mining network would have to work for 2 months (5e6
| seconds) or so - don't see how you can meaningfully reduce the
| work (it would indicate a flaw in SHA256, no?).
| runnerup wrote:
| To me it seems like the password is 14 bytes, because they're
| 14 characters (112 bits). How do you get 90 bits?
|
| It also uses 96 possible characters for each digit. Just
| storing the 96^14 different passwords without even adding
| their corresponding SHA hashes would require 5646 yottabytes.
| Which is more than 4 orders of magnitude larger than all the
| world's digital storage capacity combined together.
| FabHK wrote:
| As you say, each of the characters is not a full 8 bits
| (namely a character out of an alphabet of 256), but chosen
| from a smaller alphabet of 96 characters, and
| log(96)/log(2) = log_2(96) [?] 6.58, so 6.58 * 14 = 92
| bits. Then I deducted a bit or two ad-hoc for the way
| they're drawn, with letters overrepresented. This could be
| computed more precisely. But it's not more than 93 bits,
| and not less than 83 bits, I'd say.
| runnerup wrote:
| Thank you so, so much for explaining this.
| srinathkrishna wrote:
| At least let people change the hash function to MD5 to give them
| a chance! :D
| davidfactorial wrote:
| Oh my goodness this is the out loudest I have laughed at a tech
| thing in a long time. Cheers to you :)
| twopsix wrote:
| Seems kinda impossible to do, lel
| MailNerd wrote:
| Please do not use SHA256 for storing passwords, use Argon2
|
| ;)
| skilled wrote:
| What the hell.
| CGamesPlay wrote:
| Wordle has a "hard mode" where guesses aren't accepted unless
| they reuse hints previously given. This is clearly missing from
| this adaptation.
| politelemon wrote:
| Password is randomized on each load. Author has conveniently left
| a debugger statement in the code.
| TYMorningCoffee wrote:
| I did not know about the debugger statement until I read your
| comment: https://developer.mozilla.org/en-
| US/docs/Web/JavaScript/Refe... . Thank you.
| xeromal wrote:
| It's pretty powerful. I oftentimes struggle to get VS code to
| pick up a breakpoint when debugging serverless node
| functions, but the debugger statement usually gets it
| working.
| aerovistae wrote:
| Massively useful! I also recently learned you can right click
| a line of code in the chrome debugger to add a logpoint -
| i.e. "log the value of this expression when you reach this
| point in the code" - so I don't have to manually add
| console.log statements. Basically the reverse of discovering
| the debugger statement!
| AdamTReineke wrote:
| One more trick:
|
| Add a conditional breakpoint with the condition: `value =
| "someOverrideValue", false` to make the breakpoint change
| the value when it is reached without actually stopping
| execution. Great for when you need state changed but the
| app is always trying to override it. Here's a video from a
| talk I gave five years ago that demonstrates that:
| https://youtu.be/uixXOTCNbhs?t=1182
| bspammer wrote:
| Woah. Now that is incredibly useful.
| therein wrote:
| You can also right click a DOM element in the inspector and
| click `store as a global variable`. It will automatically
| do the following for you
|
| temp1 =
| document.querySelector(SELECTOR_FOR_NODE_YOU_PICKED)
| core-utility wrote:
| This was news to me too
| culturestate wrote:
| _> you can right click a line of code in the chrome
| debugger to add a logpoint...so I don 't have to manually
| add console.log statements_
|
| Thank you, this is the best thing I've learned in 2022.
| Vinnl wrote:
| Next try https://www.replay.io, which allows you to add
| logpoints _to code that has already executed_.
| core-utility wrote:
| Part of me wishes the author just took common passwords from
| rockyou.txt so that they're at least guessable. Though random
| really does add to the absurdity.
| jpeter wrote:
| Or use a new password every day like worle. So you have a
| community effort to guess it
| faeyanpiraat wrote:
| Is any of the information (yellow/green for characters)
| presented getting you closer to the real answer in any
| meaningful way though?
| jerf wrote:
| According to the best current knowledge of humanity, it
| provides no information whatsoever.
|
| However, proving that is difficult. It is possible that
| there exists an algorithm that could narrow in on the
| answer from hashes. Such an algorithm could run quickly,
| but it could also potentially take quite significant
| computation. We don't know what the true, optimal answer
| to this question is.
| mlyle wrote:
| > According to the best current knowledge of humanity, it
| provides no information whatsoever.
|
| ??? My first guess has two green letters, or 8 bits of
| the hash are known. This excludes 255/256 of possible
| passwords-- so if there's a dictionary, it's way cut
| down. I also know for the other 30 digits a value that
| they are _not_ -- this is about .1 bits apiece, for 3
| more bits. And I get a few more bits from knowing the
| population count for each digit.
|
| One guess has reduced the search space by a factor of
| 10000+. If I say, know the word is in
| /usr/share/dict/words, the number of possibilities has
| dwindled from 230,000 to something around 20.
|
| Now, in this case, with a 14 character randomized
| password-- the amount of benefit is limited. The search
| space is still significantly shrunk by each guess, but in
| a way that is difficult to iterate.
| jerf wrote:
| This is one of those places where it's easy to conflate
| computer bits with information theory bits. You may have
| eight computer bits, but in order for _you_ to have eight
| bits of _information_ , you must have _your_ search space
| cut down by a factor of 256, not just the abstract
| concept of a search space cut down.
|
| Can you enumerate the remaining 1/256th of the search
| space? Not with anything other than a brute force search,
| minus the one password you tried. The exact same brute
| force search that you would have needed to solve the
| problem in the first place. Your one password attempt has
| yielded one password's worth of knowledge. _You_ , a
| human, don't have eight bits of information. You have
| almost nothing.
|
| In principle, such a guess _does_ eliminate 8 bits of
| information, but we have no way of manifesting that. In
| principle if we had a full list of the shortest passwords
| that led to the given hash, we could strike off the non-
| matching entries, but no human can do that. In principle
| an easier algorithm than the brute-force search exists,
| but we have no idea what it is, and we don 't know what
| it would look like, whether it would be an incremental
| improvement over brute force or if there's hypothetically
| an algorithm that could do it on your cell phone in a
| couple of seconds or what.
|
| Hashing and cryptography in general hide in this space
| between the theoretical information leakage and the
| practical inability to do anything with it. You have 8
| theoretical bits and just shy of 0 real, practical bits.
| residualmind wrote:
| Are you sure thats how evenly distributed hash algorithms
| work? change one letter of your string, or just make it
| longer or shorter - none of your green fields will stay.
| mlyle wrote:
| > Are you sure thats how evenly distributed hash
| algorithms work? change one letter of your string, or
| just make it longer or shorter - none of your green
| fields will stay.
|
| True. But still, I know the vast majority of words in my
| dictionary don't match those two green fields after
| hashing, and can be eliminated from further consideration
| as the password.
| thewakalix wrote:
| Nothing about this algorithm relies on similar words
| producing similar hashes. If the word "foobar" has a 0 in
| the first digit of its hash, and you see a green 1 in the
| first digit in Passwordle, then you know that the answer
| can't be foobar.
| SamBam wrote:
| No, that's the joke of the site.
| core-utility wrote:
| Inherently with a (proper) hashing algorithm, the value
| and placement of characters in the hash means next-to-
| nothing in terms of the actual original text. For
| example:
|
| password = 5e884898da28047151d0e56f8dc6292773603d0d6aabbd
| d62a11ef721d1542d8
|
| passwurd = 1966e583daff0fce5630d5de44f303f0e77f77940f02c7
| d648defadc31059c7b
|
| Notice they're very different results, even though the
| original text only has 1 character difference.
| therein wrote:
| The Avalanche effect for anyone interested in reading
| more.
|
| https://en.wikipedia.org/wiki/Avalanche_effect
| AlexAndScripts wrote:
| Sort off, if you already have a lookup table of possible
| solutions.
| FabHK wrote:
| ... which you won't, because the space is too large
| (around 90 bits of entropy if I'm not mistaken, bit less,
| so 10^27-ish possible solutions).
| oceliker wrote:
| That sounds like Bitcoin with extra steps
|
| Jokes aside, that would actually be fun if the password is
| actually reasonably guess-able, I would definitely give it
| a try if that existed
| NoboruWataya wrote:
| My first try was "hunter2", then I gave up.
| ugjka wrote:
| It's OK, the goal is to find a collision
| judofyr wrote:
| Plain SAH256? Come on, use a salt please!
| drtz wrote:
| No bcrypt?
| drdaeman wrote:
| Should've been Argon2id
| aspyct wrote:
| Aaah this hurts my brain
| syngrog66 wrote:
| brilliant. now someone do this for Bitcoin/Ethereum address
| private keys
|
| (asking for a friend. _cough_ )
| boothby wrote:
| Got it in one "guess." Apparently douzo means "here you are."
| Makes me think the brick was deliberately left in the door for
| folks who look for such things.
| koolba wrote:
| My first guess was "friend", a la the Doors of Durin.
|
| http://tolkiengateway.net/wiki/Doors_of_Durin
| yreg wrote:
| It should be _mellon_.
| Bad_CRC wrote:
| "The Four Most-Used Passwords Are Love, Sex, Secret, and God"
| coreyp_1 wrote:
| You hacker... https://www.youtube.com/watch?v=0Jx8Eay5fWQ
| [deleted]
| faldore wrote:
| daneel_w wrote:
| There's something interesting to note in the visualized gradient
| distribution after guessing some common English words:
| https://i.imgur.com/hDSBaYw.png
| eganist wrote:
| That's a consequence of certain characters not reappearing in
| the hash as compared to the hash of the actual password.
|
| This would become more apparent if this traded in sha512s
| instead.
| moritonal wrote:
| There is like... four people I know I could send this to who'd
| laugh, it's so niche. Yet I also laughed out loud when I got how
| conventionally impossible it is.
| mlyle wrote:
| Is it?
|
| 6 guesses and I have 14 hex digits (56 bits) of the hash, along
| with knowing the population counts for all the numbers. This is
| enough to run a password cracker and determine the plaintext if
| it's a readily guessed password.
|
| Sure, it breaks conventional use of rainbow tables, etc, but...
|
| edit: Eh, 14 characters. OK, that's pretty resistant to
| anything other than debugging.
| [deleted]
| residualmind wrote:
| How does that help you when any of your inputs' digest is not
| related to any other's, not even knowing the target length of
| the original message? what am i missing?
| thewakalix wrote:
| The correct password is impossible to _calculate_ from the
| given data, but it seems like it should be possible to
| check whether a password matches the data.
| residualmind wrote:
| Yeah because the algo is known, it is SHA256.
|
| The thing is you don't know the length of the password.
| It could be more than the number of hydrogen atoms in the
| universe, or 12. You still have to brute force or look up
| one possible solution (or collision thereof).
|
| The whole thing just shows that a hash makes ZERO
| applicable inferable assertions about the message
| (password).
|
| Thats the definition of evenly distributed hashing
| functions: change anything in the message, including
| length, and there will be no identifiable relation
| between the hashes of one messsage and the next you try,
| jacquesm wrote:
| > The thing is you don't know the length of the password.
| It could be more than the number of hydrogen atoms in the
| universe, or 12.
|
| I'll take 12 then.
| bushbaba wrote:
| Well we know it has to fit in a string data type. And
| there's only soooo much ram available to a JavaScript
| variable.
| AdamJacobMuller wrote:
| Not necessarily. The hash could have been generated with
| something other than javascript.
|
| In fact because functions like sha256 are iterative it's
| possible to hash a password which is longer than the RAM
| in a system. Technically possible to hash a password
| which is longer than storage in a system too, if you
| don't care about storing the password.
| enkid wrote:
| I mean, anything past 256 bits is going to have a
| collision, so that doesn't matter, but you're right that
| the entire point of a hash is that even if you know the
| hash, it's very very hard to find what the plaintext is.
| mtreis86 wrote:
| There are a number of reversible hash algos. The point of
| hash is that the small changes in the input produce big
| changes in the output so even a 1-bit change to the input
| produces a completely different output. Some hash algos
| having trap door functionality is really more of a bonus.
| throwawaynay wrote:
| "The thing is you don't know the length of the password.
| It could be more than the number of hydrogen atoms in the
| universe, or 12."
|
| You don't have to know the length though, just the length
| of potential collisions(so between 1 and whatever max
| length is the hash)
| nilsbunger wrote:
| i don't think anyone has created a hash collision in
| SHA-256 yet (meaning, given a hash, create an input that
| generates the hash)
| throwawaynay wrote:
| yeah but who cares? it's still 100% possible, you just
| need a lot of time
| residualmind wrote:
| [ @some-sober-math-guy insert probabilities ]
| acchow wrote:
| This isn't how Sha works
| JAlexoid wrote:
| Oh wow! You have a lot of friends!... (unironic self
| deprecating voice)
| antirez wrote:
| You can easily guess the right sha256 just using random strings
| and overlapping correct characters and then you can run a
| dictionary attack on it, or a brute force one if it's not too
| long.
| VikingCoder wrote:
| Winners never quit. And quitters never win.
|
| But those who never win AND never quit are idiots.
| eganist wrote:
| I ended up crossposting it to the few security rooms I'm in for
| quick laughs
|
| But for what it's worth, this also serves as a great initial
| CTF-type introduction to how debuggers work in web browsers.
| jerf wrote:
| If the debugger is open, Passwordle automatically breaks the
| execution right where the answer is determined.
|
| Now that's service.
| umvi wrote:
| TIL there's a "debugger" keyword[0] in JavaScript that
| auto-sets a breakpoint at that line.
|
| [0] https://developer.mozilla.org/en-
| US/docs/Web/JavaScript/Refe...
| therein wrote:
| int 3 of Javascript. I use it all the time because
| webpacked assets make it hard to find the line of code I
| am looking for.
| geraldwhen wrote:
| If you build source maps this isn't a problem.
| y4mi wrote:
| It's always surprising how few people know of these
| featured, same with the other console functions such as
| table, time etc
| LeoNatan25 wrote:
| I laughed. It's excellent, and great fit for the crowd here.
| jacobkg wrote:
| I laughed so hard
| cco wrote:
| As someone that works at an authentication API company, there
| are _dozens_ of us who found this hilarious.
|
| > Yet I also laughed out loud when I got how conventionally
| impossible it is. Maybe give it a whirl with
| https://sha256algorithm.com/? haha
___________________________________________________________________
(page generated 2022-02-16 23:00 UTC)