この大会は2021/9/11 5:00(JST)~2021/9/13 5:00(JST)に開催されました。
今回もチームで参戦。結果は3599点で1216チーム中72位でした。
自分で解けた問題をWriteupとして書いておきます。
Welcome (misc)
Discordに入り、#rulesチャネルで:thumbsup:のリアクションをすると、いくつかチャネルが現れる。#generalチャネルのトピックにフラグが書いてあった。
flag{W3Lcom3_7o_CS4w_D1ScoRD}
poem-collection (warm-up)
poemsのリンクをクリックすると、ワーニングが出る。
Warning: file_get_contents(): Filename cannot be empty in /var/www/html/poems/index.php on line 4
他にpoem1.txt、poem2.txt、poem3.txtのボタンがある。poem1.txtのボタンをクリックすると、以下のURLに遷移する。
http://web.chal.csaw.io:5003/poems/?poem=poem1.txt
http://web.chal.csaw.io:5003/poems/?poem=/var/www/html/flag.txtにアクセスすると、フラグが表示された。
flag{l0c4l_f1l3_1nclusi0n_f0r_7h3_w1n}
checker (warm-up)
コードを見ると、2進数文字列にして、いろいろとエンコードしているので、逆算する。
#!/usr/bin/env python3 def rev_up(x): x = [chr(int(x[i:i+8], 2) >> 1) for i in range(0, len(x), 8)] return ''.join(x) def rev_down(x): x = ''.join(['1' if x[i] == '0' else '0' for i in range(len(x))]) return x def rev_right(x, d): x = x[-d:] + x[:-d] return x def rev_left(x, d): x = x[::-1] x = rev_right(x, len(x) - d) return x encoded = '1010000011111000101010101000001010100100110110001111111010001000100000101000111011000100101111011001100011011000101011001100100010011001110110001001000010001100101111001110010011001100' d = 24 x = rev_left(encoded, d) x = rev_down(x) x = rev_right(x, d) flag = rev_up(x) print(flag)
flag{r3vers!nG_w@rm_Up}
Crack Me (warm-up)
saltはハッシュの方式。ハッシュの長さから、目的のハッシュはsha256であることがわかる。saltは"sha256"としてrockyou.txtのワードをブルートフォースで探す。
from hashlib import sha256 h = 'a60458d2180258d47d7f7bef5236b33e86711ac926518ca4545ebf24cdc0b76c' with open('dict/rockyou.txt', 'r') as f: words = f.read().split('\n') for word in words: text = 'sha256' + word if sha256(text).hexdigest() == h: flag = 'flag{%s}' % word print flag break
flag{cathouse}
ransomwaRE (rev)
ファイルサイズから平文と暗号文の対応は以下のようになっている。
2020_IC3Report.pdf.backup:cad0b75505847a4792a67bb33ece21ec9c7bd21395ca6b158095d92772e01637.pdf.cryptastic 20180212_113048_Jones_C_ADMI2017_Ransomware.pdf.backup:9df65cc45479c058ef4a600c1e607fec44d83682db732f077817c58bed47a191.pdf.cryptastic us-aers-ransomware.pdf.backup:a25981adfb782d04cccfb2ad66ae8e63ead31f62fb898913f1ec99359f2e1c4b.pdf.cryptastic
平文はすべてPDFで暗号文のヘッダ部分は同じ。バイナリの解析が困難だったため、XORと推測して、上記の鍵を求めて比較してみると、同じであることがわかった。
平文がない暗号文にも同じ鍵でXORして復号する。
from Crypto.Util.strxor import strxor with open('files/2020_IC3Report.pdf.backup', 'rb') as f: pt1 = f.read() with open('files/cad0b75505847a4792a67bb33ece21ec9c7bd21395ca6b158095d92772e01637.pdf.cryptastic', 'rb') as f: ct1 = f.read() with open('files/20180212_113048_Jones_C_ADMI2017_Ransomware.pdf.backup', 'rb') as f: pt2 = f.read() with open('files/9df65cc45479c058ef4a600c1e607fec44d83682db732f077817c58bed47a191.pdf.cryptastic', 'rb') as f: ct2 = f.read() with open('files/us-aers-ransomware.pdf.backup', 'rb') as f: pt3 = f.read() with open('files/a25981adfb782d04cccfb2ad66ae8e63ead31f62fb898913f1ec99359f2e1c4b.pdf.cryptastic', 'rb') as f: ct3 = f.read() with open('files/ea6b505ffded681a256232ed214d4c3b410c8b4f052775eb7e67dcbd5af64e63.pdf.cryptastic', 'rb') as f: ct = f.read() key1 = strxor(pt1, ct1) key2 = strxor(pt2, ct2) key3 = strxor(pt3, ct3) keys = [key1, key2, key3] min_l = min([len(k) for k in keys]) assert key1[:min_l] == key2[:min_l] == key3[:min_l] key = '' for k in keys: if len(key) < len(k): key = k pt = strxor(ct, key[:len(ct)]) with open('flag.pdf', 'wb') as f: f.write(pt)
復号すると、PDFになり、開いてみると、フラグが書いてあった。
flag{w4y_t0_put_th3_RE_1n_W1nd0w5_r4n50mw4RE}
Contact Us (forensics)
Wiresharkで開くと、たくさんのTLS通信がある。sslkeyfile.txtが添付されているので、[編集]-[設定]で左ペインの[Protocols]-[TLS]を選択し、以下を設定する。
(Pre)-Master-Secret log filename: sslkeyfile.txtのパス
これでTLS通信が復号される。http2でフィルタリングして見ていくと、No.2534のパケットのjsonデータの中にフラグが書いてあった。
flag{m@r$hm3ll0w$}
Forgery (crypto)
サーバ処理の概要は以下の通り。
・p: 1024ビット素数 ・g = 3 ・MASK = 2**1024 - 1 ・x, y = gen_keys() ・x: 1以上p-2以下ランダム整数 ・y = pow(g, x, p) ・p, g, y表示 ・answer: 入力(hex) ・r: 数値入力 ・s: 数値入力 ・answer_bytes: answerのhexデコード ・answer_bytesに'Felicity', 'Cisco', 'both'のどれも含まれていない場合、エラー ・answer_bytesに'Felicity', 'Cisco', 'both'のどれかが含まれていて、verifyでOKならフラグを表示
answer_bytesに上記の文字列('Felicity'など)が含んでいるかを判定した後にanswer_bytesにマスクをかけて署名をしている。このため、answer_bytesを十分長い文字列にして、MASKよりも上位のbitで上記の文字列を含めればよい。
#!/usr/bin/env python3 import socket from math import gcd from random import randint def recvuntil(s, tail): data = b'' while True: if tail in data: return data.decode() data += s.recv(1) MASK = 2**1024 - 1 _s = socket.socket(socket.AF_INET, socket.SOCK_STREAM) _s.connect(('crypto.chal.csaw.io', 5006)) data = recvuntil(_s, b': \r\n').rstrip() print(data) params = [int(x) for x in data.splitlines()[0].split(' ')[-3:]] p = params[0] g = params[1] y = params[2] answer_bytes = b'Felicity' answer_bytes += (256 - len(answer_bytes)) * b'\x00' answer_int = int(answer_bytes.hex(), 16) while True: t = randint(2, p - 2) if gcd(t, p - 1) != 1: continue r = pow(g, t, p) * y % p s = (-r) % (p - 1) m = t * s % (p - 1) break answer_int += m answer = hex(answer_int)[2:] print(answer) _s.sendall(answer.encode() + b'\n') data = recvuntil(_s, b': \r\n').rstrip() print(data) print(r) _s.sendall(str(r).encode() + b'\n') data = recvuntil(_s, b': \r\n').rstrip() print(data) print(s) _s.sendall(str(s).encode() + b'\n') data = recvuntil(_s, b'\r\n').rstrip() print(data) data = recvuntil(_s, b'\r\n').rstrip() print(data)
実行結果は以下の通り。
Server's public key (p,g,y): 145379552079804240300701619131905344145060662795005078098058868656983068485567681351555280647383836613556100371398565015796687662667116939870826138688421571561812594821087386511901583707263296350866220590056080998488294893557149165228181031300765081937739860599403361056622254223152428630321374744003060069747 3 83129544495179983348250330574468935673212486707482957462618847302030127437270491478309896072969529264536660072514334996867730112324715524908855568729247202756009063618035203589329583330846127136338025251913396630011131146064385787250692351861350487599230217963800165880403130765215313661386030104082738453473 Who do you think is the tech wizard: Felicity or Cisco or both? Please answer it with your signnature (r,s) Answer: 46656c6963697479000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000260df8a645f58b98798c0bc6ebf4c8fafe41141a9cc88be749ab1dd54045de0f807f4826fb4607ea2633be7cdd3104bd5963ade62c5997603e114c7ceb5207b3672fcbd048c7030d845eeb2782574b98df68a3d913ed022d95718b44db9cf92d2e2480272073c0290913df4f2cb164eb3bd428c3dd324b754bbfc1bd0ed2bbb7 r: 49712563831430704343498670698226407134454453509544036157981477720170332031904902296209319209197744317779220509775257930387056451470123415567403718345671356531842436786711947107540384344066225474160519508789760857533457842202991446221441079134122383642678473455348259313376489561520788655018344019268566104649 s: 95666988248373535957202948433678937010606209285461041940077390936812736453662779055345961438186092295776879861623307085409631211196993524303422420342750215029970158034375439404361199363197070876705701081266320140954837051354157719006739952166642698295061387144055101743245764661631639975303030724734493965097 I see you are a fan of Arrow! flag{7h3_4rr0wv3r53_15_4w350M3!}
flag{7h3_4rr0wv3r53_15_4w350M3!}
RSA Pop Quiz (crypto)
RSAの問題が何問か出るようだ。結果的には以下を順に解いていくことになった。
1つ目はeが大きいので、Wiener's attackで復号する。 2つ目はFermat法でnを素因数分解し復号する。 3つ目はLSB decryption oracle attackで復号する。 4つ目はPartial Key Exposure Attackで復号する。
とりあえず1つ目から3つ目の暗号を復号していく。
import socket import gmpy from Crypto.Util.number import * from fractions import Fraction def recvuntil(s, tail): data = '' while True: if tail in data: return data data += s.recv(1) def continued_fraction(n, d): cf = [] while d: q = n // d cf.append(q) n, d = d, n - d * q return cf def convergents_of_contfrac(cf): n0, n1 = cf[0], cf[0] * cf[1] + 1 d0, d1 = 1, cf[1] yield (n0, d0) yield (n1, d1) for i in xrange(2, len(cf)): n2, d2 = cf[i] * n1 + n0, cf[i] * d1 + d0 yield (n2, d2) n0, n1 = n1, n2 d0, d1 = d1, d2 def wieners_attack(e, n): cf = continued_fraction(e, n) convergents = convergents_of_contfrac(cf) for k, d in convergents: if k == 0: continue phi, rem = divmod(e * d - 1, k) if rem != 0: continue s = n - phi + 1 D = s * s - 4 * n if D > 0 and gmpy.is_square(D): return d def isqrt(n): x = n y = (x + n // x) // 2 while y < x: x = y y = (x + n // x) // 2 return x def fermat(n): x = isqrt(n) + 1 y = isqrt(x * x - n) while True: w = x * x - n - y * y if w == 0: break elif w > 0: y += 1 else: x += 1 return x - y, x + y def lsb_oracle(s, cipher): print cipher s.sendall(str(cipher) + '\n') data = recvuntil(s, '\n').rstrip() print data data = recvuntil(s, '\n').rstrip() print data res = int(data.split(': ')[1]) return res def lsb_continue(s, ans): data = recvuntil(s, ')\r\n').rstrip() print data print ans s.sendall(ans + '\n') if ans == 'yes': data = recvuntil(s, ')\r\n').rstrip() else: data = recvuntil(s, '?\r\n').rstrip() print data s = socket.socket(socket.AF_INET, socket.SOCK_STREAM) s.connect(('crypto.chal.csaw.io', 5008)) #### Part 1 #### data = recvuntil(s, '?\r\n').rstrip() print(data) N = int(data.splitlines()[2].split(' ')[-1]) e = int(data.splitlines()[3].split(' ')[-1]) c = int(data.splitlines()[4].split(' ')[-1]) d = wieners_attack(e, N) m = pow(c, d, N) plaintext = long_to_bytes(m) print(plaintext) s.sendall(plaintext + '\n') data = recvuntil(s, '\r\n').rstrip() print(data) #### Part 2 #### data = recvuntil(s, '?\r\n').rstrip() print(data) N = int(data.splitlines()[2].split(' ')[-1]) e = int(data.splitlines()[3].split(' ')[-1]) c = int(data.splitlines()[4].split(' ')[-1]) p, q = fermat(N) phi = (p - 1) * (q - 1) d = inverse(e, phi) m = pow(c, d, N) plaintext = long_to_bytes(m) print(plaintext) s.sendall(plaintext + '\n') data = recvuntil(s, '\r\n').rstrip() print(data) #### Part 3 #### data = recvuntil(s, ')\r\n').rstrip() print(data) N = int(data.splitlines()[2].split(' ')[-1]) e = int(data.splitlines()[3].split(' ')[-1]) c = int(data.splitlines()[4].split(' ')[-1]) bounds = [0, Fraction(N)] m = 0 while True: c2 = (c * pow(2, e, N)) % N lsb = lsb_oracle(s, c2) if lsb == 1: bounds[0] = sum(bounds)/2 else: bounds[1] = sum(bounds)/2 diff = bounds[1] - bounds[0] diff = diff.numerator / diff.denominator if diff == 0: lsb_continue(s, 'no') m = bounds[1].numerator / bounds[1].denominator break else: lsb_continue(s, 'yes') c = c2 plaintext = long_to_bytes(m) print plaintext s.sendall(plaintext + '\n') data = recvuntil(s, '\r\n').rstrip() print(data) #### Part 4 #### data = recvuntil(s, '?\r\n').rstrip() print(data)
実行結果は以下の通り。
Part 1 --> This is one of the most common RSA attacks in CTFs! N = 64966240030622416154839827358419075787700771225076921979975519819154379405907914717101294108015192141036047346810295220638782496631671743842278813053579406552862077347599267299527505522824709921132036362672401353388280386832508538652443480504691404328800041296994272057227802594287137033629372917298396205191 e = 18897396846109758481310934994296350806569267455701311992638766018627831581009309492821843466468973510333979530532120915905743086916072900463338998248102631007437910144192787267636874586386795287942218953927853971469553974554238093433441486519100803296643451885175277621423454405914938416196598594294858816375 c = 10288046343769309352038206359354318857835082912701170439434605861690327425219086892948000634310828315814021366481610878615330506478118357269212201339503086185635842539317792028973305053463479633128408639025579945030309123981804583724043342244929765529405639948295384349266719842472519935827521371648600621879 What is the plaintext? Wiener wiener chicken dinner★ Success! Part 2 --> Sexy primes were used to make the modulus! N = 45591594543939036820581386282432430634955511505150874457884359540572791976098908634789254370635340951180420426249770205038465453036549929252077499917223028597156933864766645758057971022945137582325989558087380734338603952458808958686437329653639491787734717063675333378655914214268579152057338140895926822491 e = 65537 c = 1708819600505262662539757775443954762683877936532473290727105020006945400857696115070453339081578199050469415470540794379293606139546129994163640808382612444667923489770883470272982436648490695992903391654824793932805394803400703739482023640385634279438253184886814712191392363709244699867909525156210059364 What is the plaintext? Who came up with this math term anyway?★ Success! Part 3 --> Looks like there is a oracle which is telling the LSB of the plaintext. That will not help you, right? N = 109348420627756394000768307621000140796762408681674290280503383662718887865271066160414557156837970223840962200617929486260708982938463365024216272298079386239587157406106833121579380686823642057127848623201143329088238125552866329719675775914925733415134594453945302024641396321470463986568239065915058166509 e = 65537 c = 102219966092978666136905985476473513076730266069351004765113054416554816684047329686835952891208604017623807256925869923546280554066663353452874562113606734151684202401268135164127466689640303236108907937347738312083759283678094362520433924354019998048687356209621055622260598528334209087995017380709399476003 What would you like to decrypt? (please respond with an integer) 58101787051878295673143737889830937346779825958774592954145107652091025392203919148348709641166195917217170170224635034596166995962158852368408500879016932083400613980561912499924421749347934676259288606626906862864378630004520540468405929415593170899863378911867947597671612600446014882776003783388390820500 The oracle responds with: 0 Would you like to continue? (yes/no) yes What would you like to decrypt? (please respond with an integer) 21195387716739457498770225156930606664626809677658271950603879325589619135196073392865833016406558459298174051599941854248154440860637778737188164436426768514693793440065047988065393182622312111758810479758546620734517515999523422673095709011895841378003049575595189068189765806659423622078091463103648797755 The oracle responds with: 0 Would you like to continue? (yes/no) yes : What would you like to decrypt? (please respond with an integer) 97090479463767367266144858706966696872858612685074568798977905817980050283622011349579903601171589062514501731617284966201794789821959640815373500458993691252191844650813200300560194198624117060001473815679990625202757425927750306343133690448812794267475176286942595651306433929723374277942685790092023853163 The oracle responds with: 0 Would you like to continue? (yes/no) no What is the plaintext? Totally did not mean to put an oracle there★ Success! Part 4 --> Oops, looks like I leaked part of the private key. Hope that doesn't come back to bite me! N = 132682485803007099170424605940744898698288032907359531404311358689896921894394276311289421570502755510540171857625782559259936160050939005721985759875822326177754881128394850748044495701494647981635565335755052568561168111300052786557505645328497636109516071109811226177599105551923507900026268168095997962219 e = 17 d0 = 12061421581045547984738981416661612812979557949924175556577182750790198461467294035656279662728773071179872302537194516065966306163352529359051235330625201 c = 33742456768040833693431609406454945818439152783101388625351840125597392858468769560111011691367935143612704350187927907776510550984267239989726968960539378753293336524458341747441346573942609816271185540849660910160639192981312793330720752937763828849018126002943985420247023073683850935357468022129481891622 d0bits = 512 nBits = 1024 What is the plaintext?
最後にsageを使って、Partial Key Exposure Attackで復号する。
#!/usr/bin/sage from Crypto.Util.number import * def partial_p(p0, kbits, n): PR.<x> = PolynomialRing(Zmod(n)) nbits = n.nbits() f = 2^kbits*x + p0 f = f.monic() roots = f.small_roots(X=2^(nbits//2-kbits), beta=0.3) # find root < 2^(nbits//2-kbits) with factor >= n^0.3 if roots: x0 = roots[0] p = gcd(2^kbits*x0 + p0, n) return ZZ(p) def find_p(d0, kbits, e, n): X = var('X') for k in range(1, e+1): results = solve_mod([e*d0*X - k*X*(n-X+1) + k*n == X], 2^kbits) for x in results: p0 = ZZ(x[0]) p = partial_p(p0, kbits, n) if p: return p if __name__ == '__main__': N = 132682485803007099170424605940744898698288032907359531404311358689896921894394276311289421570502755510540171857625782559259936160050939005721985759875822326177754881128394850748044495701494647981635565335755052568561168111300052786557505645328497636109516071109811226177599105551923507900026268168095997962219 e = 17 d0 = 12061421581045547984738981416661612812979557949924175556577182750790198461467294035656279662728773071179872302537194516065966306163352529359051235330625201 c = 33742456768040833693431609406454945818439152783101388625351840125597392858468769560111011691367935143612704350187927907776510550984267239989726968960539378753293336524458341747441346573942609816271185540849660910160639192981312793330720752937763828849018126002943985420247023073683850935357468022129481891622 d0bits = 512 nBits = 1024 p = find_p(d0, d0bits, e, N) q = N // p phi = (p - 1) * (q - 1) d = inverse_mod(e, phi) m = pow(c, d, N) plaintext = long_to_bytes(m) print(plaintext)
復号結果は以下の通り。
I'll be careful next time to not leak the key★
nc接続し、手動でここまで復号した平文を入力していく。
$ nc crypto.chal.csaw.io 5008 Part 1 --> This is one of the most common RSA attacks in CTFs! N = 57617918741128191583229588318384729085119885425668753907446952842586645861666815267839632079563824412545600301808698355017350597224411369604831290911127344070166445311658738681065923707309169618133294419524524550000860539642979691736394333710071746531065692557021273452140144532143770001705929676449759937621 e = 14858060365944842673412188305642410338564983111885306332589507876553373824896256836885663767524831616661981834693871737187139258325450841130092123222898014095591216155373017382279794513778319406293152816524633461536000589359315075544546343018965651012864921767810338686881525299572470395390153216211542495731 c = 35715846185117431946821533506741315394122314639603262003238720681590430245351810458532502476778891542011081223501067422392078718670824919144896518751129740642470182379389308397654532193225526699213561189055169096506504501303020539608821164113210417957177817217713976953101782835645328060179709425225037979568 What is the plaintext? Wiener wiener chicken dinner Success! Part 2 --> Sexy primes were used to make the modulus! N = 95585325793539053915860304319728969840644989079527294697749247414650396512551723460189054317475031935552859316594916940268613125197360225839725677067855277077719661798291394467740467448073174262687410035467994658870903157261987186336137081402469855573155805882621958091665703430680631712361323034287008275591 e = 65537 c = 92718411798395462674971316863377528179727808586679176939278617378359986342961875012624458182184695433169252212840724588071530498219438581458777082601960446356514508062953010685888036702835152515953566759492087517867460210499349454194749398178950341969866062349961639032769722009080694820379991773839703034635 What is the plaintext? Who came up with this math term anyway? Success! Part 3 --> Looks like there is a oracle which is telling the LSB of the plaintext. That will not help you, right? N = 128602630724080646290983422735529393496609427796937239988768550470943022367335042142716441441369646064313976865399466202779377033933421223644473767413921854052780199847964437733082652716671950769859170556687338466600542791554687042559856626664046840655865125069627796881314078494842123965163725677517344036761 e = 65537 c = 85972682782237037253861162305837391120394155520924154767157996280794456396702966114968536360208330224740715022173131419260097476202495193602331370958390133251854523465921125224261880528349111256367878722760145333157075019989974436931271337625366718961930698640578383536311772908361124229779985722699833303384 What would you like to decrypt? (please respond with an integer) 1 The oracle responds with: 1 Would you like to continue? (yes/no) no What is the plaintext? Totally did not mean to put an oracle there Success! Part 4 --> Oops, looks like I leaked part of the private key. Hope that doesn't come back to bite me! N = 83911915786432272732898540763482241212381869303498512733861924625622652364299877685065336430745276995041262296874471585917795892240662482469346420388286620619511493358447310007362336901129834288907162199213109773696379865751592775871080704586458811639234689628483355785678455301578325045615004045344445996699 e = 17 d0 = 11222654586318802857348160869400000993441761116256321171688162861296485610127291197865166668145094066146054831200383190666023443958097130222261367784469825 c = 76316705228196123833643948181589241430980706581675687634416325224906065750882676205124830094697661543853983359742169850449507187995701436014309559846372830746866299982251110117963533813833146452125765180943827694830666559625676725150763711402719667665694441881646048420743172497306344425789642649599467128049 d0bits = 512 nBits = 1024 What is the plaintext? I'll be careful next time to not leak the key Success! Congrats on passing the RSA Pop Quiz! Here is your flag: flag{l00K5_L1K3_y0u_H4v3_p4223D_7h3_D1ff1Cul7_r54_p0p_Kw12_w17H_fLy1N9_C0L0r2}
flag{l00K5_L1K3_y0u_H4v3_p4223D_7h3_D1ff1Cul7_r54_p0p_Kw12_w17H_fLy1N9_C0L0r2}
Gotta Decrypt Them All (crypto)
問題はモールス信号になっている。/ で区切り、デコードするとASCIIコードになっているので、さらにデコードする。base64文字列になるので、デコードすると、RSA暗号のパラメータが表示される。c, eが小さいためLow Public-Exponent Attackで復号する。その後rot13でデコードする。この問題に繰り返し答えていく。
import socket import base64 import gmpy from Crypto.Util.number import * def recvuntil(s, tail): data = '' while True: if tail in data: return data data += s.recv(1) morse = {'.-': 'A', '-...': 'B', '-.-.': 'C', '-..': 'D', '.': 'E', '..-.': 'F', '--.': 'G', '....': 'H', '..': 'I', '.---': 'J', '-.-': 'K', '.-..': 'L', '--': 'M', '-.': 'N', '---': 'O', '.--.': 'P', '--.-': 'Q', '.-.': 'R', '...': 'S', '-': 'T', '..-': 'U', '...-': 'V', '.--': 'W', '-..-':'X' , '-.--': 'Y', '--..': 'Z', '-----': '0', '.----': '1', '..---': '2', '...--': '3', '....-': '4', '.....': '5', '-....': '6', '--...': '7', '---..': '8', '----.': '9' } s = socket.socket(socket.AF_INET, socket.SOCK_STREAM) s.connect(('crypto.chal.csaw.io', 5001)) for _ in range(2): data = recvuntil(s, '\n').rstrip() print data for i in range(6): data = recvuntil(s, '\n').rstrip() print data data = recvuntil(s, '\n').rstrip() print data words = data.split(' /') codes = [] for word in words: cs = word.rstrip().split(' ') w = '' for c in cs: w += morse[c] codes.append(int(w)) enc = '' for code in codes: enc += chr(code) enc = base64.b64decode(enc) print enc N = int(enc.splitlines()[0].split(' ')[-1]) e = int(enc.splitlines()[1].split(' ')[-1]) c = int(enc.splitlines()[2].split(' ')[-1]) m = gmpy.root(c, e)[0] dec = long_to_bytes(m) plaintext = dec.decode('rot13') data = recvuntil(s, '>> ') print data + plaintext s.sendall(plaintext + '\n') data = recvuntil(s, '\n').rstrip() print data data = recvuntil(s, '\n').rstrip() print data data = recvuntil(s, '\n').rstrip() print data
実行結果は以下の通り。
Can you decrypt them all to prove yourself? What does this mean? ---.. ....- /.---- ----- ..... /-.... ..... /..... --... /--... ...-- /-.... ---.. /-.... ----. /....- ---.. /--... --... /.---- ----- -.... /----. ----. /..... ...-- /--... ---.. /.---- ..--- ..--- /----. ----. /....- ---.. /--... --... /.---- ----- -.... /.---- ----- ...-- /....- ----. /--... ----. /-.... ---.. /.---- ----- ...-- /..... ----- /--... --... /.---- ----- -.... /-.... ----. /....- ---.. /--... --... /-.... ---.. /.---- ----- ...-- /..... ...-- /--... --... /.---- ----- -.... /---.. ..... /....- ----. /--... --... /.---- ----- -.... /.---- ----- ...-- /....- ----. /--... ---.. /---.. ....- /.---- ----- --... /.---- .---- ----. /--... ----. /-.... ---.. /---.. ----. /.---- ..--- ----- /--... ---.. /---.. ....- /---.. ..... /.---- ..--- ----- /--... ----. /---.. ....- /-.... ----. /....- ---.. /--... --... /---.. ....- /----. ----. /....- ----. /--... --... /.---- ----- -.... /--... --... /..... ...-- /--... --... /.---- ----- -.... /-.... ----. /....- ---.. /--... --... /-.... ---.. /---.. ----. /....- ----. /--... ----. /-.... ---.. /---.. ----. /..... ----- /--... ---.. /-.... ---.. /.---- ----- ...-- /.---- ..--- ----- /--... ----. /---.. ....- /--... ...-- /.---- .---- ----. /--... --... /.---- ..--- ..--- /--... --... /..... ..--- /--... ---.. /-.... ---.. /--... ...-- /.---- ..--- ----- /--... --... /---.. ....- /.---- ----- ...-- /....- ---.. /--... --... /.---- ----- -.... /---.. .---- /.---- .---- ----. /--... ---.. /.---- ..--- ..--- /----. ----. /....- ----. /--... ---.. /.---- ..--- ..--- /---.. .---- /..... ...-- /--... ---.. /.---- ..--- ..--- /---.. ----. /.---- ..--- ..--- /--... --... /-.... ---.. /---.. ----. /..... ...-- /--... ---.. /-.... ---.. /---.. ----. /.---- ..--- .---- /--... ----. /---.. ....- /----. ----. /....- ---.. /--... ----. /---.. ....- /-.... ----. /.---- ..--- ..--- /--... ----. /-.... ---.. /----. ----. /.---- ..--- ..--- /--... --... /---.. ....- /----. ----. /..... ...-- /--... ----. /---.. ....- /-.... ----. /.---- ..--- .---- /--... --... /.---- ----- -.... /---.. .---- /.---- ..--- ..--- /--... --... /.---- ..--- ..--- /---.. ..... /....- ----. /--... ---.. /.---- ..--- ..--- /.---- ----- --... /..... ..--- /--... --... /.---- ..--- ..--- /---.. .---- /.---- .---- ----. /--... --... /---.. ....- /-.... ----. /.---- ..--- ----- /--... ----. /---.. ....- /-.... ----. /....- ---.. /--... ---.. /.---- ----- -.... /--... --... /.---- ..--- .---- /--... ----. /---.. ....- /---.. ----. /.---- ..--- ..--- /--... ---.. /---.. ....- /-.... ----. /.---- .---- ----. /--... --... /---.. ....- /-.... ----. /..... ..--- /--... ---.. /.---- ----- -.... /---.. ..... /....- ----. /--... --... /.---- ----- -.... /---.. ----. /.---- .---- ----. /--... ---.. /.---- ----- -.... /--... ...-- /.---- ..--- ..--- /--... --... /-.... ---.. /----. ----. /.---- .---- ----. /--... --... /-.... ---.. /---.. ----. /.---- ..--- ----- /--... --... /---.. ....- /---.. ----. /..... .---- /--... ---.. /.---- ..--- ..--- /--... ...-- /.---- ..--- ----- /--... ---.. /.---- ----- -.... /-.... ..... /..... ..--- /--... ---.. /.---- ----- -.... /---.. ..... /.---- ..--- ----- /--... ---.. /.---- ..--- ..--- /--... ...-- /..... ..--- /--... ----. /---.. ....- /-.... ----. /..... ..--- /--... --... /-.... ---.. /--... --... /.---- ..--- ..--- /--... --... /.---- ----- -.... /---.. ----. /.---- ..--- ..--- /--... --... /-.... ---.. /---.. ..... /.---- .---- ----. /--... --... /-.... ---.. /--... --... /..... ..--- /--... ---.. /.---- ..--- ..--- /-.... ----. /.---- .---- ----. /--... --... /.---- ..--- ..--- /--... ...-- /..... .---- /--... --... /---.. ....- /----. ----. /.---- .---- ----. /--... ---.. /.---- ..--- ..--- /-.... ..... /.---- ..--- ..--- /--... --... /.---- ----- -.... /----. ----. /.---- ..--- .---- /--... ----. /-.... ---.. /---.. ----. /..... ...-- /--... ---.. /.---- ..--- ..--- /---.. ..... /.---- ..--- .---- /--... ---.. /.---- ..--- ..--- /--... --... /.---- ..--- .---- /--... ---.. /.---- ..--- ..--- /---.. .---- /.---- .---- ----. /--... --... /---.. ....- /.---- ----- --... /..... .---- /--... --... /-.... ---.. /---.. .---- /.---- .---- ----. /--... ---.. /.---- ..--- ..--- /----. ----. /.---- .---- ----. /--... ---.. /---.. ....- /----. ----. /..... ----- /--... ---.. /.---- ----- -.... /-.... ..... /....- ----. /--... --... /.---- ----- -.... /--... --... /..... ...-- /--... ---.. /.---- ..--- ..--- /--... ...-- /.---- ..--- ..--- /--... --... /-.... ---.. /---.. ----. /..... .---- /--... ---.. /-.... ---.. /---.. ----. /.---- ..--- ..--- /--... ---.. /-.... ---.. /.---- ----- ...-- /..... ----- /--... ---.. /.---- ----- -.... /-.... ----. /..... ..--- /--... ----. /---.. ....- /.---- ----- --... /..... ----- /--... --... /.---- ----- -.... /.---- ----- ...-- /.---- ..--- ..--- /--... ---.. /-.... ---.. /---.. ----. /..... .---- /--... --... /-.... ---.. /----. ----. /.---- ..--- ----- /--... ---.. /---.. ....- /--... --... /.---- .---- ----. /--... --... /---.. ....- /----. ----. /..... ..--- /--... --... /.---- ..--- ..--- /---.. ..... /.---- .---- ----. /--... ----. /-.... ---.. /-.... ----. /.---- ..--- ..--- /--... ----. /---.. ....- /---.. ..... /..... .---- /--... --... /---.. ....- /---.. ..... /....- ---.. /--... --... /.---- ..--- ..--- /---.. .---- /.---- ..--- ..--- /--... --... /.---- ..--- ..--- /-.... ----. /....- ----. /--... ---.. /---.. ....- /---.. .---- /....- ---.. /--... ----. /-.... ---.. /-.... ----. /..... .---- /--... --... /---.. ....- /--... --... /.---- .---- ----. /--... --... /---.. ....- /--... --... /.---- ..--- ..--- /--... ----. /-.... ---.. /.---- ----- --... /.---- .---- ----. /--... ---.. /.---- ----- -.... /--... --... /....- ---.. /--... ---.. /.---- ..--- ..--- /---.. ..... /.---- ..--- ----- /--... ---.. /-.... ---.. /----. ----. /.---- ..--- .---- /--... --... /.---- ----- -.... /-.... ----. /..... .---- /--... ----. /---.. ....- /---.. .---- /..... ...-- /--... ----. /-.... ---.. /---.. .---- /....- ---.. /--... --... /---.. ....- /.---- ----- --... /.---- ..--- .---- /--... ---.. /.---- .---- ----. /.---- .---- ..--- /.---- ----- ---.. /--... ...-- /-.... ---.. /....- ---.. /.---- ----- ...-- /--... --... /.---- .---- ----. /.---- .---- ..--- /.---- ----- -.... /--... ...-- /-.... ---.. /....- ---.. /.---- ----- ...-- /--... --... /---.. ....- /---.. ..... /.---- ..--- .---- /--... --... /---.. ....- /---.. ----. /..... .---- /--... ---.. /-.... ---.. /--... ...-- /....- ---.. /--... --... /.---- ----- -.... /----. ----. /.---- ..--- ..--- /--... ----. /---.. ....- /----. ----. /..... .---- /--... ---.. /-.... ---.. /--... --... /..... ----- /--... ---.. /.---- ..--- ..--- /-.... ..... /.---- ..--- .---- /--... ----. /-.... ---.. /.---- ----- --... /.---- .---- ----. /--... --... /.---- ----- -.... /----. ----. /.---- ..--- ..--- /--... --... /.---- ----- -.... /----. ----. /....- ---.. /--... ---.. /---.. ....- /-.... ..... /.---- ..--- ----- /--... ---.. /.---- ..--- ..--- /--... --... /....- ---.. /--... --... /-.... ---.. /-.... ----. /.---- ..--- .---- /--... ---.. /.---- ..--- ..--- /---.. ----. /....- ----. /--... ----. /-.... ---.. /.---- ----- ...-- /.---- ..--- .---- /--... ---.. /-.... ---.. /.---- ----- ...-- /..... .---- /--... --... /-.... ---.. /-.... ..... /..... ..--- /--... --... /.---- ..--- ..--- /--... --... /..... ..--- /--... ----. /---.. ....- /----. ----. /.---- ..--- ..--- /--... --... /.---- ----- -.... /--... --... /.---- ..--- .---- /--... ---.. /---.. ....- /-.... ..... /.---- ..--- .---- /--... --... /---.. ....- /----. ----. /.---- .---- ----. /--... --... /.---- ..--- ..--- /---.. ..... /..... ----- /--... --... /.---- ..--- ..--- /----. ----. /....- ----. /--... --... /---.. ....- /---.. .---- /..... ..--- /--... ----. /-.... ---.. /-.... ----. /..... ..--- /--... ---.. /.---- ----- -.... /-.... ..... /..... ...-- /--... ---.. /.---- ----- -.... /--... ...-- /.---- ..--- ----- /--... ----. /-.... ---.. /---.. ----. /.---- ..--- ..--- /--... ----. /---.. ....- /----. ----. /....- ----. /--... --... /.---- ----- -.... /---.. ..... /..... ----- N = 142797742858862140892552855908615519141752392140658664819203384211842407757497630694629749138731799122433557983401119146329635101186552606230700611677216086517289180332630500387103271707032728697527327401970407705766052397230674634866189962834670715301783508139571543433155448171301338906347514722179498441927 e = 3 c = 152167424273977436702890273274501734012765882487008338973232502170356375148818609621863975256 >> Pokemon Names You are correct! What does this mean? ---.. ....- /.---- ----- ..... /-.... ..... /..... --... /--... ...-- /-.... ---.. /.---- ----- ...-- /....- ---.. /--... --... /-.... ---.. /---.. ..... /....- ----. /--... --... /-.... ---.. /---.. .---- /.---- .---- ----. /--... --... /.---- ----- -.... /.---- ----- ...-- /.---- ..--- ..--- /--... ---.. /.---- ----- -.... /----. ----. /..... ...-- /--... ---.. /---.. ....- /----. ----. /.---- ..--- ..--- /--... --... /---.. ....- /---.. .---- /..... ..--- /--... --... /.---- ----- -.... /--... ...-- /....- ---.. /--... ---.. /.---- ----- -.... /---.. ..... /..... ..--- /--... ---.. /.---- ----- -.... /-.... ----. /..... .---- /--... ----. /-.... ---.. /--... --... /..... ----- /--... --... /-.... ---.. /--... --... /....- ----. /--... ---.. /---.. ....- /----. ----. /....- ----. /--... --... /---.. ....- /-.... ..... /.---- ..--- ..--- /--... --... /---.. ....- /.---- ----- --... /.---- ..--- .---- /--... ---.. /.---- ..--- ..--- /----. ----. /.---- ..--- ----- /--... ----. /-.... ---.. /---.. ..... /.---- ..--- .---- /--... --... /.---- ..--- ..--- /---.. ..... /.---- ..--- .---- /--... ---.. /---.. ....- /.---- ----- ...-- /..... ..--- /--... --... /-.... ---.. /--... ...-- /.---- ..--- ----- /--... --... /-.... ---.. /-.... ..... /.---- .---- ----. /--... --... /.---- ..--- ..--- /----. ----. /..... .---- /--... ----. /-.... ---.. /-.... ..... /.---- .---- ----. /--... ---.. /.---- ----- -.... /---.. .---- /..... ...-- /--... ---.. /-.... ---.. /.---- ----- ...-- /.---- ..--- .---- /--... ---.. /.---- ..--- ..--- /--... ...-- /..... .---- /--... ---.. /---.. ....- /.---- ----- ...-- /..... ----- /--... ---.. /---.. ....- /---.. ----. /.---- .---- ----. /--... --... /.---- ..--- ..--- /-.... ..... /..... ...-- /--... --... /---.. ....- /----. ----. /.---- ..--- ----- /--... --... /.---- ..--- ..--- /.---- ----- ...-- /.---- .---- ----. /--... ---.. /-.... ---.. /.---- ----- --... /.---- .---- ----. /--... ---.. /-.... ---.. /---.. ..... /.---- .---- ----. /--... ----. /---.. ....- /---.. .---- /..... ----- /--... ---.. /.---- ..--- ..--- /--... ...-- /.---- ..--- ----- /--... ----. /---.. ....- /----. ----. /....- ---.. /--... ----. /-.... ---.. /.---- ----- ...-- /.---- ..--- ..--- /--... --... /---.. ....- /-.... ..... /....- ---.. /--... --... /.---- ..--- ..--- /--... ...-- /.---- ..--- ..--- /--... --... /.---- ----- -.... /---.. ..... /.---- ..--- ----- /--... ---.. /---.. ....- /--... ...-- /....- ---.. /--... ----. /-.... ---.. /----. ----. /....- ----. /--... ----. /-.... ---.. /--... --... /....- ----. /--... ----. /---.. ....- /---.. .---- /.---- .---- ----. /--... --... /---.. ....- /--... ...-- /..... ...-- /--... --... /---.. ....- /.---- ----- --... /.---- ..--- ..--- /--... ---.. /-.... ---.. /.---- ----- ...-- /..... ----- /--... ---.. /-.... ---.. /--... --... /..... .---- /--... --... /.---- ..--- ..--- /.---- ----- --... /....- ---.. /--... --... /.---- ..--- ..--- /--... ...-- /..... ...-- /--... ----. /-.... ---.. /.---- ----- ...-- /..... ...-- /--... --... /-.... ---.. /--... ...-- /....- ---.. /--... --... /---.. ....- /--... ...-- /....- ---.. /--... ---.. /.---- ..--- ..--- /-.... ..... /.---- ..--- ..--- /--... ---.. /---.. ....- /---.. ..... /.---- ..--- ----- /--... ---.. /---.. ....- /---.. .---- /....- ---.. /--... --... /.---- ..--- ..--- /--... ...-- /..... .---- /--... ----. /---.. ....- /----. ----. /..... ----- /--... ----. /---.. ....- /.---- ----- ...-- /..... .---- /--... ----. /---.. ....- /.---- ----- ...-- /..... .---- /--... ---.. /.---- ..--- ..--- /---.. ----. /.---- ..--- .---- /--... --... /---.. ....- /----. ----. /....- ---.. /--... --... /-.... ---.. /.---- ----- ...-- /.---- ..--- ----- /--... --... /---.. ....- /---.. .---- /.---- .---- ----. /--... --... /-.... ---.. /----. ----. /....- ----. /--... ----. /-.... ---.. /.---- ----- --... /.---- .---- ----. /--... ----. /-.... ---.. /---.. .---- /..... ----- /--... ---.. /.---- ----- -.... /.---- ----- --... /..... ----- /--... ----. /---.. ....- /---.. ..... /..... ..--- /--... ---.. /.---- ----- -.... /---.. .---- /....- ---.. /--... ----. /-.... ---.. /---.. ----. /.---- ..--- .---- /--... ----. /---.. ....- /---.. ..... /..... ...-- /--... ----. /---.. ....- /-.... ..... /..... .---- /--... --... /-.... ---.. /--... --... /.---- ..--- ..--- /--... ----. /-.... ---.. /--... ...-- /..... ...-- /--... --... /.---- ----- -.... /-.... ..... /....- ---.. /--... ---.. /.---- ..--- ..--- /-.... ..... /..... ..--- /--... ---.. /---.. ....- /---.. .---- /..... ----- /--... ----. /-.... ---.. /----. ----. /.---- ..--- ..--- /--... ----. /-.... ---.. /.---- ----- ...-- /.---- ..--- .---- /--... ---.. /.---- ----- -.... /.---- ----- --... /..... ..--- /--... --... /.---- ----- -.... /---.. ----. /.---- ..--- ----- /--... ----. /-.... ---.. /-.... ..... /..... ...-- /--... ----. /-.... ---.. /----. ----. /..... .---- /--... ---.. /---.. ....- /-.... ----. /....- ---.. /--... ---.. /.---- ..--- ..--- /----. ----. /..... ----- /--... ---.. /-.... ---.. /--... --... /..... .---- /--... --... /.---- ----- -.... /---.. ..... /.---- ..--- .---- /--... ---.. /.---- ----- -.... /---.. ----. /....- ----. /--... --... /-.... ---.. /-.... ..... /....- ----. /--... ---.. /---.. ....- /.---- ----- --... /....- ---.. /--... ---.. /.---- ..--- ..--- /.---- ----- ...-- /.---- .---- ----. /--... --... /.---- ..--- ..--- /----. ----. /....- ---.. /--... ---.. /-.... ---.. /.---- ----- ...-- /....- ---.. /--... ---.. /.---- ..--- ..--- /--... ...-- /.---- ..--- ----- /--... ----. /---.. ....- /---.. .---- /..... ..--- /--... ---.. /.---- ..--- ..--- /---.. ..... /.---- ..--- .---- /--... ----. /---.. ....- /---.. ----. /..... ...-- /--... --... /.---- ----- -.... /.---- ----- ...-- /.---- .---- ----. /--... ---.. /---.. ....- /--... ...-- /.---- ..--- ..--- /--... ----. /---.. ....- /---.. ----. /.---- ..--- .---- /--... ---.. /.---- ..--- ..--- /.---- ----- ...-- /.---- ..--- ..--- /--... --... /.---- ..--- ..--- /---.. .---- /.---- ..--- ----- /-.... --... /.---- ----- ----. /---.. ..... /.---- ----- ...-- /---.. ----- /---.. ...-- /-.... ..... /.---- ..--- ..--- /-.... --... /.---- ----- ----. /--... --... /.---- ----- ...-- /---.. ----- /---.. ...-- /-.... ..... /..... .---- /--... ---.. /-.... ---.. /---.. ..... /..... ----- /--... ----. /-.... ---.. /----. ----. /..... .---- /--... ---.. /.---- ----- -.... /.---- ----- --... /..... ..--- /--... ---.. /.---- ..--- ..--- /---.. .---- /.---- ..--- .---- /--... --... /.---- ----- -.... /.---- ----- ...-- /..... .---- /--... ---.. /.---- ----- -.... /.---- ----- --... /..... ----- /--... ----. /-.... ---.. /--... --... /....- ----. /--... ---.. /.---- ..--- ..--- /---.. ----. /.---- .---- ----. /--... ----. /---.. ....- /-.... ..... /..... .---- /--... --... /.---- ----- -.... /-.... ----. /.---- ..--- .---- /--... ----. /---.. ....- /.---- ----- --... /..... ...-- /--... --... /---.. ....- /---.. ..... /.---- ..--- .---- /--... ----. /-.... ---.. /---.. ----. /.---- .---- ----. /--... ----. /---.. ....- /----. ----. /-.... .---- N = 84055040283679573148224658617836035575103192771852352588021000377800649482727586560309171380490450946721974883104323251524875835940129193486437394329889024124703551544327976987987762174081140075890846696958644862959907033829204708546873882698261809877514776437252665005594780374484721948752969280523962783341 e = 3 c = 745687769874228769683576090721299915286097 >> Elekid You are correct! What does this mean? ---.. ....- /.---- ----- ..... /-.... ..... /..... --... /--... ...-- /-.... ---.. /-.... ----. /.---- ..--- ----- /--... ---.. /---.. ....- /--... --... /..... .---- /--... ---.. /-.... ---.. /---.. .---- /..... ----- /--... --... /-.... ---.. /---.. ----. /....- ---.. /--... --... /.---- ----- -.... /--... --... /.---- ..--- ----- /--... ---.. /.---- ..--- ..--- /---.. .---- /.---- ..--- .---- /--... ---.. /.---- ----- -.... /.---- ----- ...-- /....- ----. /--... ---.. /-.... ---.. /-.... ..... /.---- ..--- .---- /--... ----. /-.... ---.. /---.. .---- /.---- ..--- .---- /--... --... /.---- ..--- ..--- /.---- ----- --... /.---- ..--- .---- /--... ---.. /.---- ----- -.... /-.... ----. /....- ----. /--... ----. /---.. ....- /---.. ..... /..... .---- /--... ----. /-.... ---.. /-.... ----. /.---- ..--- ..--- /--... ---.. /.---- ..--- ..--- /.---- ----- --... /..... ..--- /--... --... /.---- ----- -.... /-.... ----. /.---- ..--- ----- /--... ---.. /.---- ..--- ..--- /--... --... /.---- .---- ----. /--... ---.. /.---- ----- -.... /----. ----. /..... ----- /--... ----. /-.... ---.. /--... ...-- /....- ----. /--... ---.. /---.. ....- /---.. ..... /.---- .---- ----. /--... ----. /---.. ....- /---.. ----. /..... ..--- /--... ---.. /.---- ----- -.... /-.... ..... /.---- .---- ----. /--... ---.. /.---- ..--- ..--- /---.. ----. /..... ...-- /--... ---.. /.---- ----- -.... /---.. ----. /.---- ..--- ..--- /--... ---.. /.---- ..--- ..--- /-.... ----. /..... .---- /--... ---.. /.---- ----- -.... /---.. ..... /..... ..--- /--... ---.. /.---- ----- -.... /----. ----. /.---- ..--- .---- /--... ---.. /.---- ..--- ..--- /.---- ----- ...-- /.---- ..--- ..--- /--... ----. /---.. ....- /.---- ----- ...-- /....- ---.. /--... ----. /---.. ....- /---.. ..... /..... ----- /--... ----. /-.... ---.. /.---- ----- ...-- /..... ..--- /--... ---.. /.---- ..--- ..--- /--... --... /....- ----. /--... ---.. /-.... ---.. /---.. ..... /..... ----- /--... ---.. /-.... ---.. /--... ...-- /.---- ..--- ..--- /--... --... /-.... ---.. /-.... ..... /.---- .---- ----. /--... ---.. /-.... ---.. /.---- ----- --... /.---- ..--- .---- /--... --... /.---- ..--- ..--- /-.... ..... /.---- ..--- .---- /--... ---.. /.---- ..--- ..--- /--... --... /.---- .---- ----. /--... ---.. /---.. ....- /----. ----. /.---- .---- ----. /--... ---.. /.---- ..--- ..--- /.---- ----- --... /.---- ..--- .---- /--... --... /---.. ....- /.---- ----- ...-- /.---- ..--- .---- /--... --... /---.. ....- /--... --... /.---- ..--- ----- /--... ---.. /---.. ....- /-.... ..... /..... ..--- /--... ---.. /.---- ----- -.... /-.... ..... /.---- ..--- ----- /--... ---.. /---.. ....- /---.. ----. /..... .---- /--... --... /.---- ----- -.... /.---- ----- --... /....- ---.. /--... --... /-.... ---.. /----. ----. /.---- .---- ----. /--... --... /---.. ....- /---.. ..... /....- ---.. /--... ---.. /.---- ..--- ..--- /-.... ..... /....- ---.. /--... ----. /---.. ....- /.---- ----- ...-- /..... ..--- /--... ---.. /---.. ....- /.---- ----- --... /.---- ..--- ----- /--... ---.. /.---- ----- -.... /---.. ..... /..... ..--- /--... ----. /-.... ---.. /.---- ----- ...-- /....- ----. /--... ---.. /.---- ..--- ..--- /----. ----. /..... .---- /--... --... /.---- ..--- ..--- /-.... ..... /..... ..--- /--... ---.. /-.... ---.. /-.... ..... /..... ..--- /--... --... /.---- ..--- ..--- /-.... ----. /....- ----. /--... ---.. /.---- ----- -.... /---.. ----. /.---- ..--- ----- /--... ---.. /.---- ..--- ..--- /--... ...-- /..... ..--- /--... --... /-.... ---.. /-.... ----. /.---- ..--- .---- /--... --... /-.... ---.. /----. ----. /.---- ..--- ..--- /--... ---.. /-.... ---.. /---.. .---- /.---- ..--- ..--- /--... ----. /-.... ---.. /-.... ----. /.---- ..--- ----- /--... --... /-.... ---.. /-.... ..... /.---- .---- ----. /--... --... /---.. ....- /---.. ..... /.---- ..--- ..--- /--... ---.. /---.. ....- /-.... ----. /..... .---- /--... ----. /---.. ....- /-.... ----. /..... ..--- /--... ----. /---.. ....- /--... --... /.---- ..--- ----- /--... ----. /-.... ---.. /--... ...-- /..... ----- /--... --... /-.... ---.. /---.. ..... /..... ----- /--... --... /---.. ....- /---.. .---- /.---- ..--- ..--- /--... ---.. /.---- ----- -.... /.---- ----- ...-- /..... ..--- /--... ---.. /---.. ....- /-.... ----. /.---- ..--- .---- /--... ---.. /.---- ----- -.... /-.... ----. /..... ----- /--... ---.. /.---- ..--- ..--- /--... ...-- /.---- ..--- ..--- /--... ---.. /.---- ----- -.... /----. ----. /..... ----- /--... ---.. /---.. ....- /---.. ----. /.---- ..--- .---- /--... --... /.---- ..--- ..--- /--... ...-- /.---- .---- ----. /--... ---.. /---.. ....- /--... ...-- /.---- ..--- ----- /--... --... /---.. ....- /.---- ----- --... /.---- ..--- ..--- /--... ---.. /-.... ---.. /.---- ----- --... /.---- ..--- ..--- /--... --... /.---- ----- -.... /-.... ..... /....- ---.. /--... ---.. /.---- ..--- ..--- /.---- ----- ...-- /.---- ..--- .---- /--... ---.. /.---- ----- -.... /--... ...-- /.---- ..--- .---- /--... ----. /-.... ---.. /---.. ----. /.---- .---- ----. /--... ----. /-.... ---.. /-.... ..... /.---- ..--- ----- /--... ----. /---.. ....- /-.... ----. /....- ----. /--... --... /.---- ----- -.... /----. ----. /....- ---.. /--... ---.. /-.... ---.. /-.... ----. /..... ----- /--... ----. /-.... ---.. /.---- ----- --... /....- ---.. /--... --... /.---- ----- -.... /---.. ----. /.---- ..--- ..--- /--... ----. /-.... ---.. /--... ...-- /..... ----- /--... ----. /---.. ....- /---.. ----. /.---- .---- ----. /--... ----. /-.... ---.. /---.. ..... /..... .---- /--... ---.. /-.... ---.. /---.. ----. /..... ...-- /--... ----. /---.. ....- /--... --... /....- ---.. /--... --... /.---- ----- -.... /---.. ----. /.---- .---- ----. /--... ---.. /---.. ....- /---.. ..... /....- ----. /--... --... /.---- ----- -.... /---.. ----. /..... ...-- /--... --... /-.... ---.. /---.. ----. /....- ---.. /--... --... /.---- ----- -.... /---.. ..... /.---- ..--- ..--- /--... --... /.---- ..--- ..--- /---.. .---- /....- ---.. /--... --... /---.. ....- /---.. ..... /..... ...-- /--... --... /.---- ..--- ..--- /-.... ..... /....- ----. /--... --... /.---- .---- ----. /.---- .---- ..--- /.---- ----- ---.. /--... ...-- /-.... ---.. /....- ---.. /.---- ----- ...-- /--... --... /.---- .---- ----. /.---- .---- ..--- /.---- ----- -.... /--... ...-- /-.... ---.. /....- ---.. /.---- ----- ...-- /--... ---.. /---.. ....- /.---- ----- --... /.---- ..--- ..--- /--... ---.. /-.... ---.. /.---- ----- --... /....- ----. /--... ---.. /.---- ..--- ..--- /-.... ..... /.---- .---- ----. /--... --... /.---- ..--- ..--- /--... --... /.---- ..--- .---- /--... ---.. /---.. ....- /-.... ..... /..... ...-- /--... --... /.---- ..--- ..--- /-.... ..... /..... .---- /--... --... /.---- ----- -.... /---.. ..... /.---- ..--- ..--- /--... ---.. /-.... ---.. /---.. ----. /....- ----. /--... --... /.---- ..--- ..--- /--... ...-- /....- ----. /--... ---.. /.---- ----- -.... /---.. ..... /.---- ..--- ..--- /--... ---.. /---.. ....- /-.... ----. /..... ...-- /--... ---.. /.---- ----- -.... /.---- ----- ...-- /....- ----. /--... --... /.---- ..--- ..--- /-.... ----. /.---- ..--- .---- /--... --... /-.... ---.. /-.... ..... /.---- .---- ----. N = 115374460642317426854028423926159578137982117306768255509686007696637176586727839849568887354564230004923027305707921821315086015672940701547049885916588857773084083156617280120734438110001535179189318260561436885126167236765623205211934932047826228608019152744168942638269608574699342605552690642533441593053 e = 3 c = 593495700332509307253465325653519685312000 >> Yamask You are correct! What does this mean? ---.. ....- /.---- ----- ..... /-.... ..... /..... --... /--... ...-- /-.... ---.. /.---- ----- ...-- /....- ----. /--... ---.. /---.. ....- /.---- ----- ...-- /....- ---.. /--... ----. /---.. ....- /-.... ..... /.---- ..--- ----- /--... --... /---.. ....- /--... ...-- /..... ----- /--... --... /.---- ..--- ..--- /---.. ..... /....- ---.. /--... ---.. /.---- ----- -.... /---.. ..... /..... ...-- /--... ---.. /---.. ....- /.---- ----- ...-- /..... .---- /--... --... /---.. ....- /.---- ----- --... /..... ...-- /--... ---.. /.---- ..--- ..--- /.---- ----- ...-- /..... ...-- /--... --... /-.... ---.. /-.... ----. /....- ----. /--... --... /.---- ----- -.... /-.... ----. /....- ---.. /--... ----. /-.... ---.. /.---- ----- ...-- /.---- ..--- ----- /--... ---.. /-.... ---.. /-.... ..... /..... ..--- /--... ---.. /---.. ....- /---.. ..... /..... ----- /--... --... /---.. ....- /--... --... /.---- ..--- ..--- /--... ---.. /---.. ....- /.---- ----- ...-- /..... .---- /--... --... /.---- ..--- ..--- /.---- ----- ...-- /.---- ..--- ..--- /--... --... /-.... ---.. /-.... ----. /..... ----- /--... ---.. /.---- ..--- ..--- /-.... ..... /....- ---.. /--... --... /-.... ---.. /.---- ----- ...-- /....- ----. /--... ----. /-.... ---.. /.---- ----- ...-- /.---- .---- ----. /--... --... /.---- ----- -.... /---.. .---- /.---- ..--- ..--- /--... ----. /-.... ---.. /.---- ----- --... /....- ---.. /--... ---.. /.---- ..--- ..--- /--... ...-- /.---- ..--- ----- /--... --... /-.... ---.. /---.. ----. /....- ---.. /--... --... /-.... ---.. /.---- ----- ...-- /.---- ..--- ..--- /--... ----. /-.... ---.. /-.... ..... /..... ----- /--... ---.. /.---- ..--- ..--- /.---- ----- --... /.---- ..--- .---- /--... --... /.---- ----- -.... /.---- ----- ...-- /.---- .---- ----. /--... ---.. /.---- ----- -.... /-.... ..... /..... ...-- /--... ---.. /.---- ..--- ..--- /--... --... /.---- ..--- ..--- /--... ---.. /-.... ---.. /---.. ..... /.---- ..--- ..--- /--... ---.. /.---- ..--- ..--- /--... --... /.---- .---- ----. /--... ---.. /-.... ---.. /----. ----. /.---- ..--- ----- /--... ---.. /.---- ..--- ..--- /----. ----. /..... ----- /--... ----. /-.... ---.. /.---- ----- --... /.---- ..--- ..--- /--... ----. /---.. ....- /-.... ..... /..... ...-- /--... ---.. /.---- ..--- ..--- /.---- ----- --... /.---- ..--- ..--- /--... --... /.---- ----- -.... /-.... ..... /.---- ..--- .---- /--... ---.. /-.... ---.. /----. ----. /..... ..--- /--... ---.. /-.... ---.. /.---- ----- --... /..... .---- /--... ---.. /.---- ----- -.... /--... ...-- /..... ----- /--... ----. /---.. ....- /-.... ----. /....- ---.. /--... --... /-.... ---.. /.---- ----- ...-- /....- ---.. /--... ----. /---.. ....- /--... ...-- /.---- .---- ----. /--... ----. /-.... ---.. /---.. ----. /..... ..--- /--... ----. /---.. ....- /---.. .---- /..... .---- /--... ----. /---.. ....- /--... ...-- /..... ..--- /--... --... /.---- ..--- ..--- /---.. .---- /....- ----. /--... ---.. /-.... ---.. /-.... ----. /.---- ..--- ..--- /--... ---.. /-.... ---.. /-.... ..... /..... ...-- /--... ----. /---.. ....- /.---- ----- ...-- /....- ---.. /--... ----. /-.... ---.. /--... --... /..... .---- /--... ---.. /.---- ..--- ..--- /--... ...-- /..... ----- /--... --... /.---- ..--- ..--- /--... --... /.---- ..--- ..--- /--... --... /.---- ..--- ..--- /.---- ----- ...-- /.---- ..--- .---- /--... --... /---.. ....- /---.. .---- /....- ----. /--... --... /---.. ....- /-.... ..... /.---- .---- ----. /--... --... /-.... ---.. /.---- ----- ...-- /..... ----- /--... --... /.---- ..--- ..--- /----. ----. /.---- ..--- ----- /--... ---.. /.---- ..--- ..--- /---.. .---- /..... ----- /--... --... /.---- ..--- ..--- /--... ...-- /..... ----- /--... ----. /---.. ....- /--... ...-- /..... .---- /--... ---.. /.---- ----- -.... /--... ...-- /....- ----. /--... --... /.---- ----- -.... /-.... ..... /..... ...-- /--... ---.. /.---- ----- -.... /---.. ..... /.---- ..--- ..--- /--... --... /-.... ---.. /-.... ..... /..... ..--- /--... --... /---.. ....- /-.... ..... /.---- .---- ----. /--... ----. /---.. ....- /.---- ----- ...-- /.---- ..--- ----- /--... --... /.---- ----- -.... /----. ----. /....- ---.. /--... ----. /-.... ---.. /---.. ----. /....- ----. /--... --... /-.... ---.. /---.. ----. /.---- ..--- ..--- /--... --... /-.... ---.. /-.... ..... /..... ...-- /--... ----. /---.. ....- /--... ...-- /.---- ..--- ----- /--... --... /---.. ....- /-.... ----. /..... ..--- /--... --... /-.... ---.. /--... ...-- /.---- ..--- ----- /--... ---.. /.---- ----- -.... /----. ----. /..... ...-- /--... --... /-.... ---.. /--... ...-- /....- ---.. /--... ----. /---.. ....- /---.. ..... /.---- .---- ----. /--... ---.. /.---- ----- -.... /.---- ----- --... /..... ..--- /--... ---.. /.---- ..--- ..--- /---.. ..... /.---- ..--- .---- /--... --... /-.... ---.. /.---- ----- --... /.---- ..--- .---- /--... --... /.---- ..--- ..--- /-.... ----. /....- ---.. /--... --... /-.... ---.. /---.. ----. /..... .---- /--... --... /.---- ----- -.... /-.... ..... /..... .---- /--... --... /.---- ..--- ..--- /--... ...-- /.---- .---- ----. /--... --... /---.. ....- /.---- ----- --... /.---- ..--- ..--- /--... --... /-.... ---.. /-.... ..... /.---- .---- ----. /--... --... /.---- ----- -.... /---.. .---- /.---- .---- ----. /--... ----. /---.. ....- /--... --... /.---- .---- ----. /--... ---.. /---.. ....- /---.. ..... /....- ----. /--... --... /---.. ....- /-.... ----. /..... ..--- /--... ---.. /.---- ..--- ..--- /-.... ..... /..... ...-- /--... --... /---.. ....- /--... ...-- /....- ---.. /--... ---.. /.---- ..--- ..--- /---.. ----. /..... ----- /--... --... /.---- ..--- ..--- /----. ----. /.---- ..--- .---- /--... ----. /-.... ---.. /-.... ----. /....- ---.. /--... --... /.---- ----- -.... /--... ...-- /.---- .---- ----. /--... ---.. /.---- ..--- ..--- /----. ----. /..... .---- /--... ---.. /-.... ---.. /---.. ..... /..... ----- /--... ---.. /.---- ..--- ..--- /--... --... /.---- ..--- ..--- /--... ----. /-.... ---.. /.---- ----- ...-- /.---- ..--- ..--- /--... ----. /-.... ---.. /---.. .---- /.---- ..--- ----- /-.... --... /.---- ----- ----. /---.. ..... /.---- ----- ...-- /---.. ----- /---.. ...-- /-.... ..... /.---- ..--- ..--- /-.... --... /.---- ----- ----. /--... --... /.---- ----- ...-- /---.. ----- /---.. ...-- /-.... ..... /.---- ..--- ..--- /--... ----. /-.... ---.. /.---- ----- --... /..... ..--- /--... ----. /---.. ....- /---.. ----. /..... ...-- /--... ----. /-.... ---.. /---.. .---- /..... ..--- /--... --... /.---- ----- -.... /----. ----. /..... ...-- /--... --... /.---- ..--- ..--- /.---- ----- ...-- /.---- ..--- ..--- /--... --... /.---- ----- -.... /----. ----. /..... .---- /--... ---.. /.---- ----- -.... /.---- ----- --... /....- ---.. /--... ---.. /---.. ....- /-.... ..... /..... ..--- /--... ----. /-.... ---.. /---.. ..... /..... ----- /--... ---.. /.---- ----- -.... /--... ...-- /..... ----- /--... --... /---.. ....- /---.. ----. /.---- ..--- .---- /--... ---.. /.---- ..--- ..--- /--... ...-- /..... ..--- /--... --... /.---- ..--- ..--- /---.. ..... /.---- ..--- ----- /--... ---.. /-.... ---.. /.---- ----- --... /-.... .---- N = 85584901126354659587199789015214881408556133587383016704085880243894721064083806792280609733453730471776893909793202478497626914084920868947928345413409984837726333382145100086371746326927625209653008100981274865063009921118021679024950698752092314067207320193000240930555118709124766372814220777456733883841 e = 3 c = 389896984827938327769450885662616272835149 >> Oddish You are correct! What does this mean? ---.. ....- /.---- ----- ..... /-.... ..... /..... --... /--... ...-- /-.... ---.. /.---- ----- ...-- /..... ----- /--... ----. /---.. ....- /.---- ----- --... /.---- ..--- .---- /--... --... /-.... ---.. /--... --... /.---- ..--- ----- /--... ---.. /.---- ..--- ..--- /--... ...-- /....- ---.. /--... ---.. /.---- ..--- ..--- /---.. .---- /....- ---.. /--... --... /---.. ....- /---.. .---- /....- ----. /--... --... /-.... ---.. /-.... ----. /..... ----- /--... --... /.---- ----- -.... /--... --... /..... ...-- /--... --... /-.... ---.. /---.. ----. /.---- .---- ----. /--... --... /---.. ....- /-.... ..... /..... ..--- /--... --... /---.. ....- /---.. ----. /..... .---- /--... ---.. /-.... ---.. /---.. .---- /.---- ..--- .---- /--... --... /---.. ....- /----. ----. /..... ...-- /--... --... /-.... ---.. /----. ----. /....- ---.. /--... --... /-.... ---.. /---.. ----. /.---- ..--- ----- /--... ---.. /.---- ----- -.... /.---- ----- ...-- /.---- .---- ----. /--... ---.. /-.... ---.. /---.. ----. /....- ----. /--... ----. /-.... ---.. /.---- ----- --... /..... ----- /--... --... /---.. ....- /---.. ..... /..... .---- /--... --... /---.. ....- /-.... ..... /..... .---- /--... ----. /-.... ---.. /----. ----. /....- ----. /--... --... /---.. ....- /---.. .---- /....- ----. /--... ---.. /.---- ..--- ..--- /---.. ..... /....- ----. /--... --... /-.... ---.. /--... ...-- /.---- ..--- ----- /--... ---.. /---.. ....- /---.. ----. /.---- .---- ----. /--... --... /.---- ----- -.... /----. ----. /....- ----. /--... ---.. /---.. ....- /-.... ----. /..... ...-- /--... ---.. /.---- ..--- ..--- /---.. ----. /.---- ..--- ..--- /--... --... /-.... ---.. /--... --... /..... .---- /--... ---.. /-.... ---.. /-.... ----. /..... ..--- /--... --... /---.. ....- /----. ----. /.---- .---- ----. /--... --... /.---- ..--- ..--- /----. ----. /.---- .---- ----. /--... ----. /---.. ....- /---.. ----. /.---- .---- ----. /--... ---.. /.---- ----- -.... /---.. .---- /....- ----. /--... ----. /---.. ....- /.---- ----- ...-- /.---- .---- ----. /--... --... /.---- ----- -.... /-.... ..... /....- ---.. /--... --... /-.... ---.. /-.... ..... /....- ----. /--... --... /---.. ....- /---.. ----. /..... ..--- /--... --... /.---- ..--- ..--- /---.. ----. /....- ----. /--... ----. /-.... ---.. /-.... ..... /.---- .---- ----. /--... ---.. /---.. ....- /.---- ----- ...-- /....- ---.. /--... ---.. /-.... ---.. /---.. ----. /.---- ..--- .---- /--... ---.. /-.... ---.. /---.. ..... /..... .---- /--... ----. /---.. ....- /---.. ----. /.---- .---- ----. /--... --... /---.. ....- /--... ...-- /....- ---.. /--... --... /---.. ....- /.---- ----- --... /.---- .---- ----. /--... ----. /---.. ....- /-.... ..... /....- ----. /--... --... /---.. ....- /--... ...-- /..... .---- /--... --... /---.. ....- /-.... ----. /..... ----- /--... ---.. /.---- ..--- ..--- /-.... ..... /.---- ..--- ..--- /--... --... /.---- ----- -.... /-.... ----. /..... ----- /--... ---.. /.---- ..--- ..--- /-.... ----. /.---- ..--- ..--- /--... ---.. /-.... ---.. /.---- ----- --... /.---- ..--- ..--- /--... ---.. /---.. ....- /.---- ----- --... /..... ----- /--... --... /-.... ---.. /---.. .---- /.---- ..--- ..--- /--... ----. /---.. ....- /---.. ..... /..... ..--- /--... ---.. /-.... ---.. /---.. ..... /....- ----. /--... ---.. /.---- ..--- ..--- /-.... ----. /..... ...-- /--... ----. /---.. ....- /--... --... /..... ----- /--... ---.. /-.... ---.. /--... --... /..... .---- /--... ---.. /-.... ---.. /--... ...-- /.---- ..--- .---- /--... ---.. /.---- ..--- ..--- /--... ...-- /....- ----. /--... ---.. /-.... ---.. /.---- ----- ...-- /.---- ..--- ----- /--... --... /.---- ----- -.... /----. ----. /.---- ..--- ..--- /--... --... /.---- ..--- ..--- /---.. .---- /.---- ..--- .---- /--... ----. /---.. ....- /-.... ..... /.---- .---- ----. /--... --... /---.. ....- /----. ----. /..... ..--- /--... ---.. /---.. ....- /---.. ----. /....- ---.. /--... ---.. /---.. ....- /--... --... /..... ..--- /--... --... /.---- ----- -.... /---.. ----. /.---- ..--- .---- /--... --... /-.... ---.. /---.. ----. /..... ..--- /--... --... /.---- ..--- ..--- /---.. ..... /.---- ..--- ----- /--... ----. /---.. ....- /----. ----. /..... ...-- /--... --... /---.. ....- /--... ...-- /.---- ..--- ----- /--... ---.. /.---- ----- -.... /---.. ..... /....- ----. /--... --... /.---- ..--- ..--- /-.... ..... /..... ..--- /--... ----. /-.... ---.. /.---- ----- ...-- /..... ...-- /--... ---.. /---.. ....- /.---- ----- ...-- /....- ----. /--... ----. /---.. ....- /---.. ..... /..... ...-- /--... ---.. /-.... ---.. /--... --... /..... ----- /--... --... /.---- ..--- ..--- /--... ...-- /..... .---- /--... ---.. /.---- ----- -.... /--... ...-- /..... ..--- /--... --... /-.... ---.. /----. ----. /....- ----. /--... ---.. /---.. ....- /----. ----. /.---- .---- ----. /--... ----. /---.. ....- /.---- ----- --... /.---- ..--- ..--- /--... ---.. /.---- ----- -.... /.---- ----- ...-- /..... ..--- /--... --... /.---- ----- -.... /--... --... /.---- ..--- ----- /--... ---.. /-.... ---.. /-.... ----. /.---- ..--- ..--- /--... --... /-.... ---.. /.---- ----- --... /.---- ..--- ----- /--... --... /-.... ---.. /---.. ..... /..... ...-- /--... --... /-.... ---.. /--... --... /....- ----. /--... ---.. /.---- ..--- ..--- /.---- ----- ...-- /..... .---- /--... ---.. /-.... ---.. /--... --... /..... .---- /--... ---.. /.---- ----- -.... /---.. ..... /.---- ..--- ..--- /--... ---.. /-.... ---.. /-.... ----. /....- ----. /--... ---.. /---.. ....- /.---- ----- ...-- /....- ----. /--... ----. /-.... ---.. /---.. ..... /.---- ..--- ----- /--... ---.. /-.... ---.. /--... ...-- /.---- ..--- .---- /--... ---.. /---.. ....- /--... ...-- /..... ...-- /--... ----. /---.. ....- /---.. ----. /.---- ..--- ----- /--... --... /.---- ..--- ..--- /.---- ----- ...-- /.---- ..--- ----- /--... --... /.---- ..--- ..--- /-.... ----. /.---- ..--- ----- /--... --... /.---- ..--- ..--- /.---- ----- ...-- /..... ...-- /-.... --... /.---- ----- ----. /---.. ..... /.---- ----- ...-- /---.. ----- /---.. ...-- /-.... ..... /.---- ..--- ..--- /-.... --... /.---- ----- ----. /--... --... /.---- ----- ...-- /---.. ----- /---.. ...-- /-.... ..... /..... ...-- /--... ---.. /---.. ....- /-.... ..... /..... .---- /--... ---.. /---.. ....- /--... ...-- /..... ..--- /--... --... /---.. ....- /--... ...-- /..... .---- /--... ---.. /---.. ....- /----. ----. /.---- ..--- ----- /--... ---.. /---.. ....- /-.... ----. /....- ---.. /--... --... /-.... ---.. /---.. ..... /....- ---.. /--... --... /-.... ---.. /-.... ----. /.---- .---- ----. /--... ---.. /---.. ....- /.---- ----- --... /..... ...-- /--... ---.. /-.... ---.. /---.. .---- /....- ---.. /--... ---.. /-.... ---.. /---.. ..... /..... ...-- /--... ----. /---.. ....- /-.... ..... /.---- ..--- .---- /--... --... /-.... ---.. /--... --... /....- ----. /--... ----. /---.. ....- /-.... ----. /.---- .---- ----. /--... --... /-.... ---.. /-.... ..... /-.... .---- N = 86992031724744145016239060108167442179074061680465896157107875145755021560275519763037418170370960645980204005168365800584462457960124190905127116703216713493596043958455719936437422725481273342900178564538262068351979121655308889585959436327628075570993688231413091059035787437653415585851422529961381311389 e = 3 c = 950752812757151405401059944445990203591000 >> Latios You are correct! What does this mean? ---.. ....- /.---- ----- ..... /-.... ..... /..... --... /--... ...-- /-.... ---.. /.---- ----- ...-- /.---- ..--- ----- /--... --... /.---- ----- -.... /---.. ----. /.---- .---- ----. /--... ---.. /-.... ---.. /-.... ----. /.---- ..--- ----- /--... ---.. /.---- ----- -.... /--... ...-- /..... ----- /--... ----. /-.... ---.. /---.. ----. /.---- ..--- .---- /--... ----. /---.. ....- /----. ----. /.---- ..--- ..--- /--... ----. /---.. ....- /.---- ----- ...-- /..... .---- /--... --... /.---- ..--- ..--- /-.... ----. /..... ----- /--... --... /.---- ..--- ..--- /-.... ..... /....- ----. /--... ---.. /---.. ....- /---.. ----. /.---- ..--- ----- /--... ---.. /.---- ..--- ..--- /---.. .---- /.---- ..--- .---- /--... ---.. /-.... ---.. /.---- ----- --... /....- ----. /--... ---.. /.---- ..--- ..--- /---.. ----. /.---- ..--- ----- /--... ---.. /---.. ....- /---.. .---- /....- ---.. /--... ----. /---.. ....- /.---- ----- --... /.---- ..--- ..--- /--... --... /-.... ---.. /-.... ----. /.---- ..--- .---- /--... ---.. /.---- ----- -.... /-.... ..... /.---- .---- ----. /--... ---.. /-.... ---.. /--... --... /..... ...-- /--... ----. /-.... ---.. /---.. ..... /.---- ..--- ..--- /--... --... /.---- ..--- ..--- /----. ----. /..... ...-- /--... ---.. /.---- ----- -.... /---.. ----. /..... ----- /--... --... /.---- ..--- ..--- /--... ...-- /.---- ..--- .---- /--... ----. /-.... ---.. /-.... ..... /.---- .---- ----. /--... ---.. /.---- ..--- ..--- /--... --... /.---- ..--- .---- /--... ----. /-.... ---.. /-.... ----. /..... ..--- /--... ---.. /.---- ----- -.... /---.. ----. /....- ---.. /--... ---.. /-.... ---.. /---.. ..... /.---- ..--- ----- /--... --... /.---- ----- -.... /-.... ..... /..... .---- /--... --... /.---- ..--- ..--- /.---- ----- --... /.---- .---- ----. /--... ---.. /---.. ....- /--... --... /.---- ..--- ..--- /--... ----. /---.. ....- /---.. .---- /..... ----- /--... ---.. /.---- ----- -.... /-.... ..... /..... .---- /--... --... /-.... ---.. /---.. .---- /.---- ..--- ----- /--... ----. /-.... ---.. /--... ...-- /..... ...-- /--... ---.. /.---- ..--- ..--- /---.. ----. /.---- ..--- ..--- /--... ----. /---.. ....- /.---- ----- ...-- /.---- ..--- ..--- /--... --... /-.... ---.. /---.. ----. /..... .---- /--... ---.. /.---- ----- -.... /--... ...-- /.---- .---- ----. /--... ---.. /-.... ---.. /-.... ----. /....- ---.. /--... ----. /---.. ....- /-.... ..... /.---- ..--- ..--- /--... --... /---.. ....- /.---- ----- --... /.---- ..--- ..--- /--... --... /-.... ---.. /---.. .---- /.---- .---- ----. /--... --... /-.... ---.. /.---- ----- ...-- /.---- ..--- .---- /--... --... /-.... ---.. /---.. .---- /..... .---- /--... ---.. /---.. ....- /----. ----. /.---- ..--- ..--- /--... --... /.---- ..--- ..--- /--... ...-- /.---- ..--- .---- /--... ---.. /.---- ----- -.... /----. ----. /....- ---.. /--... --... /.---- ----- -.... /--... ...-- /.---- ..--- ..--- /--... --... /-.... ---.. /----. ----. /.---- ..--- ----- /--... --... /---.. ....- /--... ...-- /..... .---- /--... --... /---.. ....- /--... ...-- /.---- ..--- ..--- /--... --... /-.... ---.. /.---- ----- --... /..... ----- /--... ---.. /---.. ....- /---.. ----. /..... .---- /--... ---.. /---.. ....- /.---- ----- ...-- /.---- ..--- ----- /--... --... /-.... ---.. /----. ----. /..... ..--- /--... ---.. /.---- ----- -.... /---.. .---- /.---- ..--- ----- /--... --... /.---- ----- -.... /--... --... /....- ---.. /--... ---.. /.---- ..--- ..--- /--... ...-- /....- ---.. /--... --... /---.. ....- /-.... ----. /.---- .---- ----. /--... ---.. /-.... ---.. /--... ...-- /..... ..--- /--... --... /-.... ---.. /----. ----. /....- ----. /--... ---.. /---.. ....- /---.. .---- /..... ...-- /--... ----. /---.. ....- /--... --... /..... ..--- /--... ---.. /---.. ....- /.---- ----- ...-- /..... ...-- /--... ---.. /---.. ....- /----. ----. /.---- ..--- ..--- /--... --... /.---- ----- -.... /-.... ----. /..... .---- /--... ---.. /.---- ..--- ..--- /.---- ----- ...-- /..... ...-- /--... ---.. /.---- ..--- ..--- /.---- ----- ...-- /....- ---.. /--... ---.. /---.. ....- /-.... ..... /.---- ..--- .---- /--... --... /.---- ----- -.... /---.. ----. /..... ..--- /--... ----. /-.... ---.. /---.. ..... /..... ...-- /--... ---.. /.---- ..--- ..--- /----. ----. /..... ..--- /--... --... /---.. ....- /--... --... /.---- ..--- .---- /--... ---.. /-.... ---.. /.---- ----- --... /.---- .---- ----. /--... --... /.---- ----- -.... /---.. ----. /....- ----. /--... --... /---.. ....- /-.... ..... /.---- ..--- .---- /--... ---.. /.---- ----- -.... /.---- ----- --... /.---- ..--- .---- /--... ---.. /---.. ....- /--... ...-- /....- ---.. /--... --... /.---- ..--- ..--- /---.. ..... /....- ----. /--... ---.. /.---- ----- -.... /-.... ----. /....- ----. /--... ----. /---.. ....- /.---- ----- ...-- /..... ...-- /--... ---.. /---.. ....- /--... ...-- /.---- .---- ----. /--... --... /.---- ----- -.... /---.. ..... /....- ---.. /--... --... /.---- ----- -.... /----. ----. /..... .---- /--... --... /.---- ----- -.... /--... --... /..... ...-- /--... ---.. /.---- ----- -.... /---.. ..... /.---- ..--- ..--- /--... ----. /---.. ....- /--... ...-- /....- ---.. /--... ----. /---.. ....- /-.... ..... /..... ...-- /--... ---.. /.---- ..--- ..--- /.---- ----- --... /....- ---.. /--... ----. /---.. ....- /-.... ..... /.---- ..--- .---- /--... ----. /---.. ....- /--... --... /.---- .---- ----. /--... ---.. /-.... ---.. /--... --... /..... ...-- /--... --... /---.. ....- /.---- ----- ...-- /..... ...-- /--... --... /---.. ....- /---.. ----. /.---- ..--- ..--- /--... ---.. /---.. ....- /.---- ----- ...-- /..... ...-- /--... --... /.---- ..--- ..--- /----. ----. /.---- .---- ----. /--... ----. /-.... ---.. /.---- ----- ...-- /..... ----- /--... ---.. /.---- ----- -.... /--... --... /..... ...-- /--... ---.. /---.. ....- /----. ----. /....- ----. /--... ----. /-.... ---.. /--... --... /.---- ..--- ..--- /--... --... /---.. ....- /--... ...-- /..... ...-- /--... ---.. /.---- ..--- ..--- /---.. ----. /..... ...-- /--... ----. /-.... ---.. /---.. .---- /.---- ..--- ..--- /-.... --... /.---- ----- ----. /---.. ..... /.---- ----- ...-- /---.. ----- /---.. ...-- /-.... ..... /.---- ..--- ..--- /-.... --... /.---- ----- ----. /--... --... /.---- ----- ...-- /---.. ----- /---.. ...-- /-.... ..... /.---- ..--- .---- /--... --... /.---- ----- -.... /.---- ----- ...-- /..... .---- /--... --... /-.... ---.. /----. ----. /..... ..--- /--... ----. /-.... ---.. /----. ----. /..... ----- /--... --... /-.... ---.. /-.... ----. /.---- ..--- ----- /--... --... /.---- ..--- ..--- /---.. ..... /..... ----- /--... ---.. /.---- ----- -.... /.---- ----- --... /....- ---.. /--... ---.. /.---- ----- -.... /-.... ----. /..... .---- /--... ---.. /---.. ....- /-.... ..... /..... .---- /--... --... /.---- ----- -.... /---.. ..... /..... ----- /--... ---.. /---.. ....- /---.. .---- /..... .---- /--... --... /-.... ---.. /.---- ----- --... /..... ----- /--... ----. /-.... ---.. /-.... ----. /.---- .---- ----. /--... ----. /-.... ---.. /--... --... /.---- .---- ----. /--... --... /---.. ....- /-.... ..... /.---- ..--- ----- /--... --... /.---- ..--- ..--- /--... --... /..... ----- /--... ---.. /-.... ---.. /.---- ----- --... /..... .---- /--... --... /---.. ....- /----. ----. /..... .---- /--... ---.. /.---- ----- -.... /---.. ----. /.---- ..--- .---- /--... ---.. /---.. ....- /--... --... /.---- ..--- ----- /--... ---.. /.---- ..--- ..--- /--... ...-- /..... ..--- /--... --... /-.... ---.. /--... ...-- /..... ...-- N = 81260411626862973987316305561742495761544993012600439853379666322800732818664451207390533946607041829763983067620414903193040082047573322674223071127123096567581078641234724110428075549938589573217789784502268859778132490265102692524355615989520254277239653924909794902930439189163589370886639575833129769843 e = 3 c = 2287078876011356694617507256547096810830101336497177662531728029 >> Tyranitar You are correct! Congrats! The GPS is activated and here's a message from your friends: flag{We're_ALrEadY_0N_0uR_waY_7HE_j0UrnEY_57aR75_70day!}
flag{We're_ALrEadY_0N_0uR_waY_7HE_j0UrnEY_57aR75_70day!}
Survey Says... (misc)
アンケートに答えたら、フラグが表示された。
flag{7H4nk5_f0R_PL4yIn9!h0PE_70_5ee_y0u_NEx7_YE4R}