|
Šifriranje številke kreditne kartice
|
| programer |
Posted on 08.07.2010 ob 14:02
|
Programer
Posts: 103
Joined: 21.07.08
|
Ali moram obvezno šifrirati številko kreditne kartice zaradi zlobar.
V bazo pa seveda ne shranim kode CVV. |
| |
|
|
| senzacionale |
Posted on 08.07.2010 ob 15:02
|
Programer
Posts: 269
Joined: 24.06.06
|
to je najmanj kar lahko narediš!
MIMAteam računalniške in informacijske storitve!
Ni ga čez FC JUVENTUS! |
| |
|
|
| programer |
Posted on 08.07.2010 ob 19:37
|
Programer
Posts: 103
Joined: 21.07.08
|
Kje na netu dobim kakšen primer za izdelavo v VS v C#. Mogoče tudi kak video.
Gledam pa ne najdem nič konkretnega. |
| |
|
|
| senzacionale |
Posted on 08.07.2010 ob 21:45
|
Programer
Posts: 269
Joined: 24.06.06
|
programer ne vem kako isces ampak v 1 sekundi sem nasel link za hesiranje gesla 
http://www.di-mgt.com.au/cryptoCreditcard.html
najlazje je reci nisem nasel. Mas sreco da se mi ljubi )
MIMAteam računalniške in informacijske storitve!
Ni ga čez FC JUVENTUS! |
| |
|
|
| programer |
Posted on 08.07.2010 ob 23:00
|
Programer
Posts: 103
Joined: 21.07.08
|
Verjemi iščem že cel dan rešitev, pa je ne najdem.
To kar si mi poslal ni nobene kode.
Sam vem kako moram kodirati številko kreditne kartice, ne vem pa kako dekodirati le to.
Za kodiranje sem rešil in sicer tako:
<%@ Page Language="C#" %>
<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN"
"http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
<html xmlns="http://www.w3.org/1999/xhtml" >
<head>
<title>ASP.NET Example</title>
<script runat="server">
void Cancel_Click(object sender, EventArgs e)
{
result.Text = "";
}
void HashPassword_Click(object sender, EventArgs e)
{
if (Page.IsValid)
{
string hashMethod = "";
if (md5.Checked)
{
hashMethod = "MD5";
}
else
{
hashMethod = "SHA1";
}
string hashedPassword =
FormsAuthentication.HashPasswordForStoringInConfigFile(userName.Text, hashMethod);
string hashedusername =
FormsAuthentication.HashPasswordForStoringInConfigFile(TextBox1.Text, hashMethod);
result.Text = "<credentials passwordFormat=\"" + hashMethod +"\"><br />" + "\" password=\"" +
hashedPassword + "\" /><br />" + "</credentials>";
result0.Text = "<credentials passwordFormat=\"" + hashMethod + "\"><br />" + "\" password=\"" +
hashedusername + "\" /><br />" + "</credentials>";
}
else
{
}
}
</script>
</head>
<body>
<form id="form1" runat="server">
<p>This form displays the results of the FormsAuthentication.HashPasswordForStoringInConfigFile
method.<br />The user name and hashed password can be stored in a <credentials> node
in the Web.config file.</p>
<table cellpadding="2">
<tbody>
<td>New User Name:</td>
<td><asp:TextBox id="userName" runat="server" /></td>
<td><asp:RequiredFieldValidator id="userNameRequiredValidator"
runat="server" ErrorMessage="User name required"
ControlToValidate="userName" /></td>
<td>New User Name:</td>
<td><asp:TextBox id="TextBox1" runat="server" /></td>
<td><asp:RequiredFieldValidator id="RequiredFieldValidator1"
runat="server" ErrorMessage="User name required"
ControlToValidate="userName" /></td>
<td>Hash function:</td>
<td align="center">
<asp:RadioButton id="sha1" runat="server" GroupName="HashType"
Text="SHA1" />
<asp:RadioButton id="md5" runat="server" GroupName="HashType"
Text="MD5" />
</td>
</tr>
<tr>
<td align="center" colspan="2">
<asp:Button id="hashPassword" onclick="HashPassword_Click"
runat="server" Text="Hash Password" />
<asp:Button id="cancel" onclick="Cancel_Click" runat="server"
Text="Cancel" CausesValidation="false" />
</td>
</tr>
</tbody>
</table>
<pre><asp:Label id="result" runat="server"></asp:Label></pre>
<pre><asp:Label id="result0" runat="server"></asp:Label></pre>
</form>
</body>
</html>
To vse lepo kodira, kako pa ta podatek vrnem nazaj v polje pa ne vem... To iščem že dlje časa pa nimam rešitve... |
| |
|
|
| programer |
Posted on 09.07.2010 ob 01:44
|
Programer
Posts: 103
Joined: 21.07.08
|
Ok šifriranje in dešifriranje mi je nekako ratalo.
A mi zna kdo povedat, kaj svetovat zakaj sploh uporabiti šifriranje?
Tukaj ni logike.
Ok, jasno mi je zaradi same varnosti strank, vendar, če pomislim mi pa ni jasno sploh zakaj.
Ok, dam primer:
Recimo da je številka kreditne kartice "1111-1111-1111-1111", in če šifriram dobim: "X5AKRIJAnbE8o750xq0z6l5LQjHqHbz / ". Ok sedaj sem uspešno šifriral in to zapišem v bazo.
Zdaj pa moram nazaj poklicati pravilno številko kreditne kartice: 1111-1111-1111-1111.
Seveda to lahko vidi uporabnik, ko se prijavi.
V bazo se ne shrani prava vrednost, ampak šifrirana. Uporabniku prikažem dešifrirano številko kartice.
V čem je sploh problem?
Namesto, da imam v bazi shranjeno: 1111-1111-1111-1111, imam tole: X5AKRIJAnbE8o750xq0z6l5LQjHqHbz / .
Če ta številka pride v roke nepridipravemu, jo lahko dešifrira tako kot sem jo jaz.
Torej zanima me bistvo šifriranja in dešifriranja? Kaj sem s tem pridobil, ko sem uporabil to možnost, saj je vseeno ali je v bazi shranjena prava vrednost, ali šifrirana. Če nekdo udere v bazo in dobi ta podatek, ga bo lahko enostavno razvozlal.
Hvala za odgovor. |
| |
|
|
| zaxy |
Posted on 09.07.2010 ob 08:09
|
Programer
Posts: 202
Joined: 21.06.07
|
Če jaz prav razumem, mora najprej priti tudi do šifrirnega ključa, ne samo do šifrirane vsebine.
www.simpel.si - simpel & professional  |
| |
|
|
| senzacionale |
Posted on 09.07.2010 ob 08:56
|
Programer
Posts: 269
Joined: 24.06.06
|
@programer saj na linku, ki sme ti ga dal je vse lepo razloženo, kaj je izvleček in kaj je potem sama enkripcija. Implementacija le tega pa je potem dokaj enostavna. Opisano imas tudi dekripcijo kako naj bi delovala...
ne uporabljaj md5 ki je izmed vseh najbolj ranljiv.... predlagam RSA.
Link: http://www.rsa.com/products/bsafe/whitepapers/DDES_WP_0702.pdf
Drugace pa vidim da ti enkripcije niso niti malo jasne. Preberi si kaj o dostopnosti in zaščiti podatkov pa ti bo jasno zakaj šifrirati in kako sploh le to deluje.
Nekaj malega imas tu, ciste osnove:
http://89.212.252.73/eBook/Kripto.pdf
drugace pa so enkripcije/dekripcije cele znanosti in ni tako trivialno kot si to predstavljas. Vse je ok dokler deluje, ko pa ti en ukrade podatke, ki so privatni in pridejo v javnost pa je stvar popolnoma drugacna. Ce bi banke delale tako kot delas ti... no ja potem bi mogoce bil ze multimilijonar 
PS: in ce delas kaj resnega z karticami, moj nasvet daj varnostno testirat preden das naprej ker vidim da se hoces igrat z necim cesar nisi zmozen sam pravilno varnostno izpeljat.
Edited by senzacionale on 09.07.2010 ob 08:59
MIMAteam računalniške in informacijske storitve!
Ni ga čez FC JUVENTUS! |
| |
|
|
| programer |
Posted on 09.07.2010 ob 11:59
|
Programer
Posts: 103
Joined: 21.07.08
|
hvala bom prebral.
V bistvu bom prejel XML datoteko, da bodo stranke lahko vplačevale. Ne vem ali imajo oni kako zaščito tud... |
| |
|
|
| arjan_t |
Posted on 09.07.2010 ob 23:43
|
Programer
Posts: 624
Joined: 21.08.06
|
senzacionale wrote:
ne uporabljaj md5 ki je izmed vseh najbolj ranljiv.... predlagam RSA.
primerjanje hrušk in jabolk
Se bo nakupe potrjevalo ročno? potem lahko uporabiš RSA, na serverju imaš samo javni ključ, s katerim lahko zakodiraš št. kartic, zasebni ključ ki lahko odkodira pa imaš lahko nekje na varnem in se ga uporabi samo ob potrjevanju naročil. Seveda tako ne moreš prikazati št kartice uporabniku, je pa tu praksa da nekodirano spraviš v bazo prve 4 cifre, drugo pokažeš zvezdice
Potem imaš še možnost simetričnega kodiranja (npr. AES), se pa tu uporablja enak ključ za kodiranje in odkodiranje, tako da je vse na serverju
Edited by arjan_t on 10.07.2010 ob 00:23 |
| |
|
|
| programer |
Posted on 10.07.2010 ob 11:54
|
Programer
Posts: 103
Joined: 21.07.08
|
ne ne se bo vplačevalo na stavnico drugače pa ja tako kot si rekel sem imel v mislih tako kot imajo drugi, da se prikažejo zvezdice in to je to... |
| |
|