(Pahoittelen Suomi24:ää, että se jättää osan pois, mutta voinette arvata puutteet.)
Tämä harjoitustyö tekee oikeasti jotain. Se kryptaa ja dekryptaa,mutta matkalla teksti muuttuu oudosti. Esim. osa kirjaimista tuplaantuu. Mistä on kyse ja miten sen voi korjata?
Avaimeksi hyvin sopivan kohinakuvan voi tehdä "kuvaamalla" peitetyllä linssillä 10-30 sekunnin valotusajalla suurimmalla iso-arvolla ja pakkaus löysimmällä. Mikä tahansa kuva käy, mutta sitten on viisaampaa kasvattaa muuttujaa "hyppy".
********************************************* kryptaus.cpp
#include //tässä pitäisi olla iostream, string ja fstream
#include
#include
int alku=12345; //alussa on epäsatunnaisuutta, joka ohitetaan
int hyppy=7; //peräkkäisillä tavuilla voi olla riippuvuutta
int av;
int vi;
int y;
int kr;
char ca;
char cv;
int main ()
{
using namespace std;
fstream avain;
fstream viesti;
avain.open("kohinakuva.jpg", ios::in |ios::binary);
viesti.open("viesti.txt",ios::in |ios::out |ios::binary);
for(y=0;y> ca;
viesti.seekg(y);
viesti >> cv;
av=ca;
vi=cv;
kr=av vi;
if(kr>255) {kr=kr-256; }
viesti.seekp(y);
cv=kr;
viesti ca;
viesti.seekg(y);
viesti >> cv;
av=ca;
vi=cv;
kr=vi-av;
if(kr
(de?)Kryptaus... melkein (char-pulma)
4
597
Vastaukset
- -anon-
Nojoo, yleensä nois muunnosfunkkareis on ihan hyvä testi vuoksi tehdä käänteisfuntio samalla ja vaikka assertoida asioita. Perusongelma kyllä näin kääntämättä näyttää olevan se että hävität informaatiota tuolla 256 hässäkällä. Koska kerran luet ja kirjoitat 8 bittiä ja laskutoimituksesi ovat väh 32 bittisiä niin siinä aina joskus infoo jää käyttämättä. Muuta käyttämään loogisia bittioperaatioita kuten xor etc... Tai kirjoita salauksesti samantien 4 kertaa isommaksi kuin alkuperäinen kirjoittamalla laskutoimituksen tulos inttinä levylle ja lukemalla se inttinä levyltä.
Vielä sellainen tiedostojen käsittelyyn littyvä asia että kannattaa kirjoittaa salattu viesti eri tiedostoon, asiat sujuu helpommin.- juuso*
??
- taikuri-hb
juuso* kirjoitti:
??
tms..
- harrastaja591
vika löytyi. pitää olla:
virtaolio >> noskipws >> muuttuja;
noskipws muuttaa extraction- tai voisiko sanoa (?) syöteoperaattorin toimintaa niin ettei tyhjiä (tai "tyhjiä") skipata.
no-skip white spaces
Ketjusta on poistettu 0 sääntöjenvastaista viestiä.
Luetuimmat keskustelut
Ensitreffit Jenni laukoo viinilasin ääressä suorat sanat Jyrkin aikeista: "Mä sanoin, että älä"
Voi ei… Mitä luulet: kestääkö Jennin ja Jyrkin avioliitto vai päättyykö eroon? Lue lisää: https://www.suomi24.fi/viihde212606- 1482244
Ymmärrän paremmin kuin koskaan
Roikut kädessäni ja vedät puoleesi. Näen kuitenkin tämän kaiken lävitse ja kaikkien takia minun on tehtävä tämä. Päästän292242Hullu liikenteessä?
Mikä hullu pyörii kylillä jos jahti päällä? Näitä tosin kyllä riittää tällä kylällä.522139Niina Lahtinen uudessa elämäntilanteessa - Kotiolot ovat muuttuneet merkittävästi: "Nyt on...!"
Niina, tanssejasi on riemukasta seurata, iso kiitos! Lue Niinan haastattelu: https://www.suomi24.fi/viihde/niina-lahti211742Kun Venäjä on tasannut tilit Ukrainan kanssa, onko Suomi seuraava?
Mitä mieltä olette, onko Suomi seuraava, jonka kanssa Venäjä tasaa tilit? Ja voisiko sitä mitenkään estää? Esimerkiks3881617Ano Turtiainen saa syytteet kansankiihoituksesta
Syytteitä on kolme ja niissä on kyse kirjoituksista, jotka hän on kansanedustaja-aikanaan julkaissut Twitter-tilillään961556- 2881436
Varokaa! Lunta voi sataa kohta!
Vakava säävaroitus Lumisadevaroitus Satakunta, Uusimaa, Etelä-Karjala, Keski-Suomi, Etelä-Savo, Etelä-Pohjanmaa, Pohjanm131389- 1321389