En Pb nous avons de quoi réaliser tous les cryptages que l’on désire mais voici 2 problèmes
Qui ne peuvent être réalisés qu’en définissant un protocole ou un processus avec PB
Remarques : Il est possible que vous trouviez une méthode qui comporte une chaine de caractères avec chr(0)+chr(0) en ASCII ou en Unicode
cela fait aussi partie des problèmes à résoudre.
Voici les 4 petits pb à résoudre pour le fun
1) Vous avez un coffre qui contient de l’argent et des bijoux et celui-ci s’ouvre avec une clé secrète (code) que vous désirez transmettre à 2 personnes
de façon que chacune d’entre-elles ne puissent accéder à l’ouverture du code sans l’aide de l’autre.
Il faut que les deux personnes soient d’accord et présentes
La méthode pour retrouver le code leur a été fourni, elle fait partie du problème.
Pour garder le plus de robustesse vous ne coupez pas le code en deux mais vous envoyez à chacune d’elle un texte crypté qui contient le code entier cryptée donc non lisible.
Comment faites-vous ?
2) On peut généraliser la méthode que vous aurez trouvée à n personnes.
Comment faites-vous pour distribuer un code crypté à n personnes
sachant qu' il est nécessaire que toutes ces personnes soient présentes pour trouver le code ?
3) Vous désirez passer un texte à une autre personne sans que l’on puisse lire le texte
et vous ne pouvez en aucun cas lui passer une clé de décryptage en claire (donc pas de clé publique)
La seule possibilité est de lui transmettre un texte crypté.
La solution n’est pas dans l’utilisation du RSA ou d’un autre algo à clé publique
et aucune clé ni aucune information autre que le texte crypté ne peuvent être transmises.
Comment faites-vous pour que cette autre personne puisse lire le texte?
4) Voici une chaine cryptée sans mot de passe avec des algorithmes que l'on dit faibles. Pouvez-vous la découvrir?"
Cette chaine a été placée dans une datasection car elle peut contenir des chr(0)+chr(0)
Code : Tout sélectionner
longueur=?fin_donne-?donne_num
ITER=longueur/8-1
structure DATA_NUM
structureunion
tab.Q[0]
chaine.s{32000}
EndStructureUnion
endstructure
define don.DATA_NUM
for i=0 to ITER
read.q don\tab[i]
next
debug "Cette chaine a été cryptée sans mot de passe avec des algorithmes que l'on dit faibles. Pouvez-vous la découvrir?"
ShowMemoryViewer(@don\chaine,longueur)
end
DataSection
donne_num:
Data.q 30962741359412482,27022104572657708,34903068917301365,29837331087097898,12948055093608574,14918397112090737
Data.q 16044314194280562,29273917276553274,23925677971079246,27303373388841031,21392476192702530,3659578429276239
Data.q 19421842117361757,2815093370585174,20829251361439831,8163087862988826,27303231660163102,28429178809745506
Data.q 10414827544772643,17733224183037990,17733189828411502,13511060877213734,12385405788749887,35184599730159679
Data.q 18296148367638573,3377991781449806,7318658632318981,21674144437698598,1407452193619968,23925441740341270
Data.q 3096310645194777,3096289170227215,48133187386277915,66147323916910760,64458491234156771,71214238569463978
Data.q 68680929415987431,68680929419657394,69806855088832723,66992088149852411,59391769854279922,56577217656717521
Data.q 62769869007356076,70932295435616455,60236559857090702,41940407199072450,62206841744195734,60799445386920090
Data.q 48414404677533904,45036975537783016,39970189733986474,47851759664038051,51792091512373419,68962129515839654
Data.q 48414490579370220,50666243144614141,37718235301937406,39407145288007819,37436760326078667,36873900567232736
Data.q 37155590288048282,43911006910021880,61080735676104866,62206596927193306,104991454813618393,102458407669989731
Data.q 106961762484814197,99643709443277163,107806548192592132,106680553791291767,88103269756633457,104710284789940585
Data.q 95139671723802942,73466347627807052,98236197113364803,93451174056624401,76844150426763593,97110353046012247
Data.q 106680442120765779,98517697864532315,81629001689530747,86695607106863393,84443841652064553,84443863127818532
Data.q 79940534082863393,104991497772269877,106117672556822843,88384414015160623,93169591698719039,90636097865056588
Data.q 73466184414920978,76280938476732757,85569505333412103,76562404864819460,97110013739139330,77688261821989132
Data.q 120191825118626075,121317780869087712,119628952488116723,137361850250822142,140176690208768508,142428524387303803
Data.q 124132625126719968,118784609159414248,139332063413469674,126384257438777806,128917493573484939,134265500948562393
Data.q 112873183677907364,131732329238954455,134828553980543447,132857958564823450,122724958187684225,119910182646120867
Data.q 137643080414134698,135109904408707513,125539716541841839,141020823081320887,120754607582806463,119347215515058607
Data.q 109214215137788347,108088091893498257,108088091890286984,114842941574480267,116532422795198914,79940903461126610
Data.q 113717647260451237,110339947538285018,153406198795534732,171139465940566636,144961983867912780,177894835316064867
Data.q 179864915336430187,163539383872258684,161569076213514866,176206024107819536,166635720284963447,165509803190452816
Data.q 164102136253252102,168605984991150660,166635788997427805,163821026345681474,176768587515691611,169169141098021402
Data.q 159598734198047322,157628327751647779,161006079011652202,161569295253897758,159880149041349163,160161671266107959
Data.q 161006147732177465,156221004412813865,145806327190061694,150028460429214223,144117391428223562,149746942502371936
Data.q 153969028499243588,145243360055853589,149747152965206530,150872812348834313,3238440010251
fin_donne:
EndDataSection
A+