Return Styles: Pseud0ch, Terminal, Valhalla, NES, Geocities, Blue Moon. Entire thread

Tripcode testing thread

Name: Anonymous 2007-08-30 5:50 ID:SUIBJgzE

ITT I will perform some saged experiments with tripcodes.

Name: Anonymous 2008-01-02 6:52

>>319

<?php

function tripcode($plain)
{
    $salt = substr($plain."H.",1,2);
    $salt = ereg_replace("[^\.-z]",".",$salt);
    $salt = strtr($salt,":;<=>?@[\\]^_`","ABCDEFGabcdef");
    return substr(crypt($plain,$salt),-10);
}

echo tripcode("tripcode"); // Outputs 3GqYIJ3Obs

?>

Name: Anonymous 2008-01-02 7:15

>>320
That's not as fun as reverse-engineering it.  Also, I'd download Shiichan if I wanted anything, because Shiichan is Enterprise-ready.

>>321
That doesn't handle all the replacements, such as & into &amp; and whatever.  Also, I wonder if it handles >0x7F characters correctly.

Name: Anonymous 2008-01-02 7:56

>>322
That's not as fun as reverse-engineering it.
So you're going to try and guess the algorithm?

That doesn't handle all the replacements, such as bawwwww bawwww bawww
Make it handle the replacements then you whining fuck.

You complain about something being "Enterprise-ready" and you moan when some other fag posts some semi-useful code. Fuck off back to ExpertsExchange, nigger.

Name: Anonymous 2008-01-02 8:09

>>323
So you're going to try and guess the algorithm?
I'm already done.  I started this thread, you see.
Make it handle the replacements then you whining fuck.
I think this is mostly correct.
void shiichan_salt(unsigned char* const in, unsigned char* const salt)
{
        unsigned int i = 0;
        const char saltchars[] = ":;<=>?@\\]^_`ABCDEFGabcdef";
        for (i = 0; i < 8; ++i) {
                switch (in[i]) {
                        case '&':   strncpy((char*)in + i, "&amp;",  5); break;
                        case '"':   strncpy((char*)in + i, "&quot;", 6); break;
                        case '\'':  strncpy((char*)in + i, "'", 6); break;
                        case '<':   strncpy((char*)in + i, "&lt;",   4); break;
                        case '>':   strncpy((char*)in + i, "&gt;",   4); break;
                        case '\x1': strncpy((char*)in + i, "&lt;",   4); break;
                        case '\x2': strncpy((char*)in + i, "&gt;",   4); break;
                        case '\x3': strncpy((char*)in + i, "&quot;", 6); break;
                }
        }
        strncpy((char*)salt, (char*)in + 1, 2);
        if (strlen((char*)in) == 2) salt[1] = 'H';
        else if (strlen((char*)in) < 2){
                salt[0] = strlen((char*)in) ? 'H' : '.';
                salt[1] = '.';
        }
        for (i = 0; i < 13; ++i) {
                if (salt[0] == saltchars[i]) salt[0] = saltchars[i + 13];
                if (salt[1] == saltchars[i]) salt[1] = saltchars[i + 13];
        }
        if (salt[0] < '0' || salt[0] > 'z') salt[0] = '.';
        if (salt[1] < '0' || salt[1] > 'z') salt[1] = '.';
}

Name: Anonymous 2008-01-02 8:44

>>324
I think this is mostly correct.
void shiichan_salt(unsigned char* const in, unsigned char* const salt)
                        case '&':   strncpy((char*)in + i, "&amp;",  5); break;


Fucking facepalm.

Name: Anonymous 2008-01-02 9:06

>>325
Yeah, I'm using unsigned chars for some reason... I think some library or something needed it, so I went with it everywhere ;)

Name: Anonymous 2008-01-02 9:26

>>326
facepalm no 2.

YOU MORON, YOU WRITE TO A const char ARRAY POINTED TO BY in. MORON.
AH
MORLON
MORNOROMROMRONRONRORMORWORNRONROBMR0NORNORMORWORNORORBMORWORNRONRORMOR9NORNORMORTWORNORNORMO9RNORNORMRONRONR0OMRO9RONROMWROMWNOMRMONO9RMONHMORM ORTONMORMORHTMORNMORMONHRONMROMROTMNOMORNM ROMONHMROMRORONROMORMON

Name: Anonymous 2008-01-02 9:49

>>327
*Laughing out loud*, please re-read K&R and C99 before returning to /prog/.

Name: Anonymous 2008-01-02 10:36

>>328
You are a funny guy, you invoke undefined behavior and then you tell me to read C99.

Name: Anonymous 2008-01-02 11:07

>>329
void Foo( int       *       ptr,
          int const *       ptrToConst,
          int       * const constPtr,
          int const * const constPtrToConst )
{
    *ptr = 0; // OK: modifies the pointee
    ptr  = 0; // OK: modifies the pointer
 
    *ptrToConst = 0; // Error! Cannot modify the pointee
    ptrToConst  = 0; // OK: modifies the pointer
 
    *constPtr = 0; // OK: modifies the pointee
    constPtr  = 0; // Error! Cannot modify the pointer
 
    *constPtrToConst = 0; // Error! Cannot modify the pointee
    constPtrToConst  = 0; // Error! Cannot modify the pointer
}

Name: Anonymous 2008-01-02 11:32

>>330
I am not sure what point you are trying to make.

Name: Anonymous 2008-01-02 12:02

>>331
That I have been constantly trolled, but at least I am right and you are wrong.

Name: Anonymous 2008-01-02 13:21

>>332
NO YOU FUCKING PIECE OF SHIT YOU WHERE NOT WRONG
GODAMMIT
YOUR SNIPPET IN >>324 PASSES TO STRNCPY A POINTER TO CONST.
GODAMMIT.
AND DON'T YOU DARE REPLY BACK WITH YHBT YHL HAND.
STUPIDITY != TROLLING.

Name: Anonymous 2008-01-02 13:22

>>333
I MENT HHTA YOU ARE WROUNG

Name: Anonymous 2008-01-02 13:24

GOD FUCKING DAMMIT I AM SO FUCKING PISSED OFF AT YOU FUCKING SHITS
GOD FUCKING DAMN WILL YOU FUCKING READ SOME FUCKING SATNDHARD AND COMPREHEND IT BEFORE YOU MAKE SOME STUPID REMARK ABOUT IT GOD FUCKING TDTAMN

Name: Anonymous 2008-01-02 13:49

>>333
Okay, I will explain it to you like you are my retarded three year old daughter: I am passing a const pointer, not a pointer to a const object.

Const pointer (pointer can't be changed, pointed data can be changed): char * const ptr;
Pointer to const (pointer can be changed, pointer data can not be changed): const char * const ptr;

Name: Anonymous 2008-01-02 13:51

>>336
Oops, drop that last const -- it's pretty hard to write code when you are receiving a blowjob.

Name: Anonymous 2008-01-02 14:25

>>337
that's damn right so stay away from computers and stick to your gay friends.

Name: moot !Ep8pui8Vw2 2008-01-02 15:25

lol internet

Name: Anonymous 2008-01-02 15:25

>>337
it's pretty hard to write code when you are receiving a blowjob.

Is this why EMACS sucks so much?

Name: Anonymous 2008-01-02 22:10

tripcode tester: http://hotaru.thinkindifferent.net/trip.html
tripcode searcher: http://hotaru.thinkindifferent.net/tripper.html

PROTIP: firefox is slow.

Name: Anonymous 2008-01-02 22:23

PROTIP: slow in your context is meaningless

Name: Anonymous 2008-01-03 1:24

PROTIP: brute-forcing encryption with javascript is fucking stupind

Name: Anonymous 2008-01-03 3:37

>>343
PROTIP: If it works who gives a fuck?

Name: Anonymous 2008-01-03 3:58

>>344
PROTIP: It's slow to the point where it doesn't fucking work.

Name: Anonymous 2008-01-03 5:42

>>345
you are that OMG OPTIMIZED guy, right?

Name: Anonymous 2008-01-03 5:55

>>346
You never actually tried a tripcode cracker at all, right?

Name: Anonymous 2008-01-03 6:18

>>320,323,325,327,329,331,333-335
What's-a-matter?  Too owned for you?

Name: Anonymous 2008-01-03 6:25

What's-a-matter?
I didn't know 1940's New York Judens posted on /prog/

Name: Anonymous 2008-01-03 7:21

>>349
Now you know.

Name: Anonymous 2008-01-03 10:19

>>350
Now you have two problems.

Name: Anonymous 2008-01-03 11:51

>>351
Yes, I do... your learning problem being the second, and my homoerotic love of trolls the first.

Name: Anonymous 2008-01-03 11:54

>>352

stfu faggit

Name: Anonymous 2008-01-03 14:56

>>353
aghahahahagaghagag

Name: TIA !rqlrTr0cNM 2008-01-04 15:21

lolilokhk

Name: Anonymous 2008-01-04 15:24

                                    

Name: augh !!hje9wJpSfz0b3L6 2008-01-07 20:52

g

Name: Bob !SaGERNXgVk 2008-01-07 21:35

6Ju(~w9[  =  8BO3DkoSss
efcD_X$x  =  w7SuaeKOss
}O537Y{A  =  nrNbDbKoSs
kGu)9qLo  =  i5JWQQkOss
DOu%p|n5  =  eayDyJkOSs
loEHFA_?  =  KOssmWAmAw
KvW-LpSs  =  kossRVoeLM

pdXoN^a~  =  c7sagEr5d6
0bf?*XPk  =  gSaGEr2fmI
\frQ6qON  =  SaGeRtWz.Y
%T.]5i+V  =  sAGEr9FFjw
(rq(Md;N  =  SaGERNXgVk

Name: !SaGeRtWz.Y 2008-01-08 8:13

sage?

Name: moot !Ep8pui8Vw2 2008-01-17 5:21

hack hack hack

Newer Posts