On Tue, Aug 27, 2002 at 11:31:05PM -0400, Keith C. Ivey wrote: > [EMAIL PROTECTED] wrote: > > > Very interesting, Keith. Perhaps Stephen, who's debutante > > post revealed a sound understanding of Teutonic languages, > > might like to translate it into English for the golf > > historians. ;) > > No, no, we have no need for human translators in this modern > age. We have Babelfish: [...]
Ugh. That hurts %) The background is, that someone up that thread suggested encoding PINs (secret number for ATM cards and the like) with a secret word and writing the result on the card itself. Secret word: Betonmischer (concrete mixer) PIN: 2478. Take 2nd, 4th, 7th and 8th letter: "eois". | In article <[EMAIL PROTECTED]>, Felix Holderied wrote: | > Na Na Na, ich habe den Geldbeutel von Jens geklaut und | > seine 5 Karten gefunden. Es standen folgende Buchstaben drauf: Well, well, i have stolen Jens's purse, and found 5 cards. They had the following letters on them: | > taae, thgg, htaa, hars, grnu | > | > Wie heisst der "Betonmischer" wirklich, und wie lauten | > seine 5 PINs? What is his "Betonmischer" (secret word), and what are his PINs. | hmm, also der Betonmischer muesste 10+ buchstaben haben, um 0-9 codieren zu | koennen, ausserdem darf kein buchstabe in den ersten 10 doppelt vorkommen... | 9 der buchstaben sind "aeghnrstu". Hmm, the "Betonmischer" has to have 10+ letters so it can code 0-9. Furthermore no letter of the first 10 may appear twice... 9 of the letters are "aeghnrstu". | matrix:~>zcat Crack_4.1+/DictSrc/german.Z | | tr '[A-Z]' '[a-z]'| | perl -ne ' | chop; | if(split(/ */)>9){ | $ok=0; | line: for($a=0;$a<10;$a++){ | for($b=$a+1;$b<10;$b++){ | if(@_[$a] eq @_[$b]){ | $ok=0;last line; # buchstabe doppelt | } | } if(@_[$a] =~ /[aeghnrstu]/){$ok++}; | } if ($ok>8){print "$_:$ok.\n";} #Das wort hat die gesuchten 9 buchstaben | } | ' | erhaltungsmassnahme:9. | haftungsrecht:9. | naturgeschichte:9. | naturgeschmack:9. | strahlungen:9. | waehrungstransaktionsberichte:9. | waehrungstrends:9. | hinausgetragen:9. The ":9." part was only for debugging %) My golf'ish solution from yesterday is: perl -e '$x=pop;map{split//;$#_=$#_>9?9:0;%q=map{lc$_,1}@_;print if(@q=keys%q)>9&&$x=~/^[@q]+$/}<>' aeghnrstu | Davon sind natuerlich nur die woerter interessant die sich in den ersten | 10 buchstaben unterscheiden (naturgeschichte und naturgeschmack sind | gleichbedeutend :) - das macht 6 woerter die in frage kommen. The only interesting words are the ones which differ in the first 10 characters (naturgeschichte and naturgeschmack are tantamount) - thats 6 relevant words | Hmm, bei 3 versuchen pro karte (geheimzahl am automaten) sollte es | kein problem darstellen, da kann man ja mit 5 karten 10 "woerter" | durchprobieren, bevor man die erste verliert... Hmm, with 3 tries per card (PIN at the ATM) - there should be no problem, because you can try 10 "words" with 5 cards before you loose the first card... | unter diesem gesichtspunkt ist diese methode also nicht sicher genug :) With this point of view, this method is not secure enough :) | -- | Fuer die Raupe ist es das Ende der Welt, | Fuer den Rest der Welt ist es ein Schmetterling Babelfish made this: > for the crawler-type vehicle it is the end of the world, > for the remainder of the world is it a butterfly This might make more sense with a s/crawler-type vehicle/caterpillar/ ;-) CU, Sec -- <inof> I don't have anything against penguins, as long as they stay in the Antarctica, swim around, catch fishes and do the usual penguin stuff.