encrypt & decrypt

Overzicht Reageren

Sponsored by: Vacatures door Monsterboard

Robbert

robbert

01/09/2006 18:20:00
Quote Anchor link
hallo

hoe kan ik met php redelijk veilig een script maken dat dit doet:
de gebruiker moet een sleutel kunnen maken b.v. RB6YP of zo.
en dan moet er een tekst gecodeert kunnen worden aan de hand van die sleutel.
en latter moet tekst weer terug gehaalt kunnen worden met de sleutel.

robbert
Gewijzigd op 01/01/1970 01:00:00 door Robbert
 
PHP hulp

PHP hulp

15/01/2025 13:02:02
 
- SanThe -

- SanThe -

01/09/2006 18:46:00
 
Jan Koehoorn

Jan Koehoorn

01/09/2006 19:48:00
Quote Anchor link
Leuke vraag! Ik ben er even mee aan het stoeien gegaan en zelf een simpel encryptie- en decryptiealgoritme geschreven. Voor beide algoritmen moet je wel dezelfde sleutel gebruiken. Superveilig zal het niet zijn, maar voor persoonlijke doeleinden is het wel bruikbaar, denk ik.
Code (php)
PHP script in nieuw venster Selecteer het PHP script
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
<?php
    $sleutel
= (isset ($_POST['sleutel'])) ? ($_POST['sleutel']) : ('ABCD');
    $src = (isset ($_POST['src'])) ? ($_POST['src']) : ('Hallo allemaal! Alles goed?');

    function
encrypt ($sleutel, $src) {
        $n = strlen ($src);
        $m = strlen ($sleutel);
        $index = 0;
        $dst = array ();
        for ($i = 0; $i < $n; $i++) {
            for ($j = 0; $j < $m; $j++) {
                $dst[$index] = ord ($sleutel{$j}) * ord ($src{$index});
                $index++;
                if ($index == $n) {
                    return implode (' ', $dst);
                }
            }            
        }
    }
    
    function
decrypt ($sleutel, $dst) {
        $m = strlen ($sleutel);
        $i = 0;
        $array = explode (' ', $dst);
        $src = array ();
        foreach ($array as $value) {
            $src[] = chr ($value / ord ($sleutel{$i}));
            $i++;
            if ($i == $m) $i = 0;
        }

        return implode ('', $src);
    }

    
    if ($_SERVER['REQUEST_METHOD'] == 'POST') {
        $dst = encrypt ($sleutel, $src);
        $org = decrypt ($sleutel, $dst);
    }

?>



<html>
<head>
    <title>Encrypt - Decrypt</title>
    <meta http-equiv="Content-Type" content="text/html; charset=iso-8859-1">
</head>

<body>
    <form method="post" action="<?php echo $_SERVER['PHP_SELF']; ?>">
        <p>
            <label for="sleutel">sleutel:</label>
            <input id="sleutel" name="sleutel" type="text" value="<?php echo $sleutel; ?>">
        </p>
        <p>
            <label for="src">source:</label>
            <textarea id="src" name="src" rows="10" cols="80"><?php echo $src; ?></textarea>
        </p>
        <p>
            <label for="dst">destiny:</label>
            <textarea rows="10" cols="80"><?php
                if (isset ($dst)) {
                    echo $dst;
                }

            ?>
</textarea>
        </p>
        <p>
            <label for="org">origineel:</label>
            <textarea rows="10" cols="80"><?php
                if (isset ($org)) {
                    echo $org;
                }

            ?>
</textarea>
            <input type="submit" value="encrypt!">
        </p>
    </form>
</body>
</html>
 
Robbert

robbert

02/09/2006 00:09:00
Quote Anchor link
dankje wel
 
Jan Koehoorn

Jan Koehoorn

02/09/2006 01:46:00
Quote Anchor link
Graag gedaan, robbert.
 



Overzicht Reageren

 
 

Om de gebruiksvriendelijkheid van onze website en diensten te optimaliseren maken wij gebruik van cookies. Deze cookies gebruiken wij voor functionaliteiten, analytische gegevens en marketing doeleinden. U vindt meer informatie in onze privacy statement.