Diskuze: c# Šifrování textu.
V předchozím kvízu, Test znalostí C# .NET online, jsme si ověřili nabyté zkušenosti z kurzu.
Zobrazeno 18 zpráv z 18.
K personalizaci obsahu a reklam, poskytování funkcí sociálních médií a analýze naší návštěvnosti využíváme soubory cookie. Informace o tom, jak náš web používáte, sdílíme se svými partnery pro sociální média, inzerci a analýzy. Partneři tyto údaje mohou zkombinovat s dalšími informacemi, které jste jim poskytli nebo které získali v důsledku toho, že používáte jejich služby.
Používáme nezbytné cookies pro fungování webu a s tvým souhlasem také analytické a marketingové cookies.
Zajišťují základní funkce, bezpečnost a služby, které sis vyžádal. Nelze je vypnout.
| Služba | Poskytovatel | Účel | Cookies a úložiště | Doba uložení |
|---|---|---|---|---|
| ITnetwork | ITnetwork | Provoz webu, relace, přihlášení a uložení nastavení cookies. | PHPSESSID, auth_token, sid, itn_consent_impression, __Host-itn_consent | Relace až 1 rok |
| Google Tag Manager | Správa značek a načítání měřicích nástrojů webu. | Žádné | Neukládá se | |
| Google Fonts | Načítání typografie webu. | Úložiště řízené poskytovatelem | Dle podmínek poskytovatele | |
| Google Hosted Libraries | Načítání potřebných knihoven a stylů webu. | Úložiště řízené poskytovatelem | Dle podmínek poskytovatele | |
| Google reCAPTCHA | Ochrana formulářů a webu před zneužitím. | _GRECAPTCHA, rc::a, rc::b, rc::c, rc::f | Relace až 180 dní | |
| YouTube | Přehrávání vloženého video obsahu. | localStorage, IndexedDB; cookies after playback interaction | Relace až trvalé úložiště | |
| Vimeo | Vimeo | Přehrávání vloženého video obsahu. | __cf_bm, _cfuvid, vuid, localStorage, IndexedDB | Relace až 2 roky |
| Facebook Login | Meta | Přihlášení pomocí účtu třetí strany. | Úložiště řízené poskytovatelem | Relace až 1 rok |
| GoPay | GoPay | Zpracování uživatelem vyžádané platby. | Úložiště řízené poskytovatelem | Dle podmínek poskytovatele |
Pomáhají nám porozumět používání webu a zlepšovat ho.
| Služba | Poskytovatel | Účel | Cookies a úložiště | Doba uložení |
|---|---|---|---|---|
| Google Analytics 4 | Měření návštěvnosti a používání webu. | _ga, _ga_* | Až 2 roky | |
| Microsoft Clarity | Microsoft | Měření návštěvnosti a používání webu. | _clck, _clsk, _cltk | Relace až 1 rok |
Slouží k měření kampaní, personalizaci reklamy a marketingové komunikaci.
| Služba | Poskytovatel | Účel | Cookies a úložiště | Doba uložení |
|---|---|---|---|---|
| Google Ads | Měření kampaní, reklama a remarketing. | _gcl_au, _gcl_ls | Relace až 90 dní | |
| Meta Pixel | Meta | Měření kampaní, reklama a remarketing. | _fbp, _fbc, localStorage | Až 90 dní |
| Sklik | Seznam.cz | Měření kampaní, reklama a remarketing. | retargeting, sid, szn:* | Relace až trvalé úložiště |
| LinkedIn Insight | Měření kampaní, reklama a remarketing. | bcookie, li_gc, lidc, __cf_bm | Relace až 1 rok | |
| Ecomail | Ecomail.cz | Měření kampaní, reklama a remarketing. | ecmid, Úložiště řízené poskytovatelem | Dle podmínek poskytovatele |
| Atribuce kampaní ITnetwork | ITnetwork | Přiřazení návštěvy a objednávky ke kampani. | campaign_clid[*], user_session_context | Až 1 rok |
V předchozím kvízu, Test znalostí C# .NET online, jsme si ověřili nabyté zkušenosti z kurzu.
máš o tom dost skreslené představy.
MD5 není šifra, ale otisk. Výhoda otisku je, že se nikdy nedá převést zpátky (na rozdíl od šifry) a toho se využívá u hesel. Když ti někdo ukradne databázi s hesly, tak se k nim nedostane.
Pracuje se s tím tak, že když se uživatel registruje, tak si do databáze uložíš otisk toho hesla a když se přihlašuje, tak si spočítáš nový otisk toho hesla s kterým se chce přihlásit a porovnáváš jenom otisky.
Na větší texy jsou různé šifry. C# jich má spoustu. Cesarova šifra není vůbec bezpečná. Zvol nějakou šifru, kde máš šifrovací klíč nebo něco. C# na to má nástroje v jmenném prostoru System.Security.Cryptography, tak se podívej do dokumentace co tam jsou za zajímavosti.
Dobře, to chápu.. Tak ještě ale nevím jedno..
Když mám třeba Form s registrací. uživatel zadá heslo a zmáčkne
registrovat. Helo se převede na MD5 otisk a... Kam mám ten otisk uložit abych
ho později mohl porovnávat při přihlašování? Ukládat ho do Textového
souboru se mi zdá špatné a ukládat ho do proměnné... při zavření
programu se smaže.. Takže nevím.
Tohle se obvykle ukládá do databáze. V tomto případě to můžeš mít klidně v souboru. Jen ho ulož třeba binárně nebo ještě ten soubor zvlášť zašifruj.
Ukládat heslo se dá například do konfiguračního souboru aplikace, nebo do nějakého typu textového souboru/xml, samozřejmě pokud bude dostatečně zabezpečené nějakým hashovacím algoritmem (MD5 se už dnes tolik nepoužívá). Ale nějak mně uniká smysl lokální aplikace s přihlašováním a registrací (samozřejmě že existují, ale moc obvyklé to není - autentizace uživatelským jménem a heslem má mnohem větší smysl v aplikacích síťových)
Smysl aplikace v tom moc nehledej.. Já zkouším dělat všechno možné
víš. Já se na tom hlavně učím než abych v tom hledal smysl.
Teď se jdu pokusit najít nějaký
hashovací algoritmus který je teď v módě 
Jednoduše máš nějaký proud dat (jinými slovy, dlouhý řetězec), který uložíš tak jak je do souboru. Výhodu to má, že si ho můžeš otevřít, ale nic v něm nepřečteš. Musíš si ho zpětně načíst podle přesné signatury. Jakmile tu signaturu ztratíš, tak už si o ty data ve většině případů přišel (pokud ta struktura není moc složitá).
O práci s binárními soubory jsou zde články: http://www.itnetwork.cz/csharp/soubory
Je to 11. díl
Ještě je možnost uložit to přes PasswordVault přímo do systému, ale pokud vím, tak je to novinka v osmičkách, takže ve dřívějších to nefunguje a taky je to trochu komplikovanější... Kdyžtak informace tady https://msdn.microsoft.com/…rdvault.aspx?… a tady http://stackoverflow.com/…in-windows-8
Nevím, co myslíš tím druhým textovým dokumentem, ale pokud nechceš, aby ti mohl ten soubor s heslem kdokoliv otevřít a změnit, tak ho prostě nějak zašifruj (jak už bylo zmíněno, ne césarovou šifrou, ale nějakou bezpečnější s klíčem, existuje jich opravdu hodně) a heslo získáš při spuštění programu tak, že ten soubor rozšifruješ a vytáhneš si ho od tam.
Ano, to vím. Ale mě jde o to aby ten soubor nemohl nikdo ani otevřít. Protože i když je to zašifrované tak to někdo může otevřít a třeba rozšifrovat v jiném programu. nebo SMAZAT.
No tak administrátor bude mít vždycky možnost otevřít jakýkoliv soubor, s tím prostě programově nijak nehneš. Od toho jsou taky přístupový práva (a hlavně skupiny podle pravomocí - admin, user, guest atd...), aby prostě obyčejnej uživatel nemohl třeba smazat určitej soubor (nebo ho i otevřít, záleží na nastavení). Vzhledem k tomu, že s tím jen blbneš, bych to buď nechal být, nebo se teda poohlédnul po trochu jiném řešení, například to PasswordVault, nebo uložení a autentizace přes server (není to tak těžký) a tak...
Dobře
Tak já to nebudu
řešit. Ale řekni mi tedy poslední 
Existuje program na zamykání souborů. Přetáhneš soubor do programu
zahesluješ a soubor je v tom programu ale nikde jinde. To udělaly jak? 
No, tohle jsem sice nijak zjišťoval, ale podle mě si ten program ten soubor prvně přesune na nějaký svoje úložiště v počítači (pořád tam je, jen jinde a asi i skrytej) a potom zašifruje s heslem.
Data nikdy nezmizí, to že se z pohledu programu zdá, že s k datům
nedostaneš, tak to ještě neznamená že to nejde 
To aby je nikdo nesmazal bych řešil tak, že pokud je někdo smaže, tak se
třeba vytvoří nové defaultní. A proti tomu otevření prosté šifrování
jak tu už psali 
Btw. u jakékoliv hry si můžeš smazat polovinu souborů, ale kdo by to řešil?
Zobrazeno 18 zpráv z 18.
