Posts: 10
Threads: 5
Joined: Jan 2004
Ladies and Gentlemen, Boys and Girls, the ultimate challenge has arisen! You are going to create a progam that will take a document (.txt or other) and specialy encrypt it. Also needed is a decrypter that will decrypt the document as well! You will be the king of internet privicy :king:
E-mail or PM me by, umm lets see :roll: February 14 2004
:bounce: GOODLUCK :bounce:
If you can't dazzle them with brilliance, baffle them with bull shit"
Posts: 864
Threads: 13
Joined: Oct 2003
QB encryption program 1.03
Simple text encryption by Paul Malcher
Encryption program by Chris Pulley
Encrypt by Adam Perry & Matt Ochs
Crypt by Strategy Surplus
Crypter by Lucas Alonso
File Crypt by Eric McCormick
Hey-Cody by The WebKid
Xor encryption/decryption by Jonathan Leger
Xor encryption by Scott Turchin
Is there something in particular you are looking for that is different from the above programs? Maybe a few more details could help us out in developing something you want to see.
igitalblackie.com - Done! Ask about our hosting
-Goddess of the of the No More Religion Threads movement
Posts: 2,765
Threads: 138
Joined: Nov 2002
yes, are there any specific rules you have to follow?
Back by popular demand!
I will byte and nibble you bit by bit until nothing remains but crumbs.
Posts: 3,616
Threads: 287
Joined: Jan 2003
Dum de dum...Ok, here's mine:
Code: DIM inbyte AS STRING*1
DIM outbyte AS STRING*1
INPUT "Code to use:";code
OPEN "infile.txt" FOR BINARY AS #1
OPEN "outfile.txt" FOR BINARY AS #2
DO UNTIL EOF(1)
GET #1,inbyte
outbyte=CHR$(ASC(inbyte) XOR code)
PUT #2,outbyte
NEXT
CLOSE #1,#2
There you go. Very simple, very WEAK XOR encryption. I've built a few pretty strong encryption algos, but I don't have the time to go modifying them to QB now.
And to decrypt:
Code: DIM inbyte AS STRING*1
DIM outbyte AS STRING*1
INPUT "Code to use:";code
OPEN "outfile.txt" FOR BINARY AS #1
OPEN "outfile2.txt" FOR BINARY AS #2
DO UNTIL EOF(1)
GET #1,inbyte
outbyte=CHR$(ASC(inbyte) XOR code)
PUT #2,outbyte
NEXT
CLOSE #1,#2
Cheers.
[EDIT]Note that you use the same code(1-255) you entered to encrypt the file, to decrypt it.
f only life let you press CTRL-Z.
--------------------------------------
Freebasic is like QB, except it doesn't suck.
Posts: 10
Threads: 5
Joined: Jan 2004
There are no specific guidlines, just a program that can encrypt and decrypt. And ummm....technically, the first person is Zack, but lets see who can make one that wasn't previously made.
If you can't dazzle them with brilliance, baffle them with bull shit"
Posts: 3,616
Threads: 287
Joined: Jan 2003
Fine, fine...I'll make a stronger encryption algo.
I'll work on it later. So disregard my previous submission. I'll post the new one later.
f only life let you press CTRL-Z.
--------------------------------------
Freebasic is like QB, except it doesn't suck.
Posts: 3,616
Threads: 287
Joined: Jan 2003
OK, here it is:
Quote:CLS
DIM inbyte AS STRING * 1
DIM outbyte AS STRING * 1
INPUT "File to encrypt: ", infile$
INPUT "File to send encrypted chars to: ", outfile$
INPUT "Code to use: ", code
OPEN infile$ FOR BINARY AS #1
OPEN outfile$ FOR BINARY AS #2
DO UNTIL EOF(1)
GET #1, , inbyte
outbyte = CHR$((ASC(inbyte) XOR code) XOR (code - 3))
PUT #2, , outbyte
LOOP
And the code you use to encrypt is the same you use to decrypt (use the very same program to decrypt it).
[EDIT] Oh yeah, the code you enter needs to be between 4 and 255.
f only life let you press CTRL-Z.
--------------------------------------
Freebasic is like QB, except it doesn't suck.
Posts: 2,765
Threads: 138
Joined: Nov 2002
is that the same thing but subtracting 3 from the inputted code
edit: nvm
edit: my version?
edit2:updated
edit3:mwahaha updated again >_>
Code: CLS
DIM inbyte AS STRING * 1
DIM outbyte AS STRING * 1
INPUT "File to encrypt: ", infile$
INPUT "File to send encrypted chars to: ", outfile$
INPUT "Code to use: ", code
OPEN "c:\progra~1\qbasic4.5\qbfiles\encrypt\" + infile$ FOR BINARY AS #1
OPEN "c:\progra~1\qbasic4.5\qbfiles\encrypt\" + outfile$ FOR BINARY AS #2
DO UNTIL EOF(1)
SELECT CASE code
CASE IS >= 255: code = 4
CASE IS < 4: code = 4
CASE ELSE: code = code + 1
END SELECT
GET #1, , inbyte
outbyte = CHR$((ASC(inbyte) XOR code))
FOR i = 1 TO 3
outbyte = CHR$((ASC(outbyte) XOR (code - i)))
NEXT
PUT #2, , outbyte
LOOP
CLOSE
Back by popular demand!
I will byte and nibble you bit by bit until nothing remains but crumbs.
Posts: 1,845
Threads: 44
Joined: Aug 2002
Hmmmn. I could have post my Bac superior text compression program... but since that is secret...
However, here's a bit swapper:
Code: '$DYNAMIC
DEFINT A-Z
COLOR 15
PRINT "Bit Swapper"
PRINT "By Neo Deus Ex Machina" + CHR$(13) + "-----------------------"
COLOR 7
INPUT "Input file to (de)compress:", InFile$
INPUT "Input file to write to:", OutFile$
InFile$ = LTRIM$(RTRIM$(UCASE$(InFile$)))
OutFile$ = LTRIM$(RTRIM$(UCASE$(OutFile$)))
Encrypted = 0
InF = FREEFILE
OPEN InFile$ FOR BINARY AS #InF
OutF = FREEFILE
OPEN OutFile$ FOR BINARY AS #OutF
Header$ = SPACE$(7)
GET #InF, , Header$
IF Header$ = STRING$(3, 26) + "NDEM" THEN Encrypted = NOT(0)
SEEK #InF, 1
IF Encrypted THEN
SEEK #InF, 8
ELSE
Header$ = STRING$(3, 26) + "NDEM"
PUT #OutF, 1, Header$
END IF
DIM Byte AS STRING * 1, NewByte AS STRING * 1
flen& = LOF(InF)
IF Encrypted THEN flen& = flen& - 7
got& = 0
CLS 'clear screen for progress bar
PRINT "Busy..."
IF NOT Encrypted THEN
DO UNTIL got& >= flen&
GET #InF, , Byte
IF got& = 0 THEN
FrontNib% = (ASC(Byte) AND &HF0) \ &H10
BackNib% = (ASC(Byte) AND &HF)
ELSE
FrN% = (ASC(Byte) AND &HF0) \ &H10
BkN% = (ASC(Byte) AND &HF)
NewByte = CHR$((BackNib% * &H10) OR FrN%)
PUT #OutF, , NewByte
BackNib% = BkN%
END IF
got& = got& + 1
LOCATE 2, 1
perc% = INT(got& / flen& * 80)
PRINT STRING$(perc%, 219) + STRING$(80 - perc%, 176)
LOOP
IF got& > 0 THEN
NewByte = CHR$((BackNib% * &H10) OR FrontNib%)
PUT #OutF, , NewByte
END IF
ELSEIF Encrypted THEN
DO UNTIL got& >= flen&
IF got& = 0 THEN
SEEK #InF, 7 + flen&
GET #InF, , Byte
BackNib% = (ASC(Byte) AND &HF)
SEEK #InF, 8
ELSE
GET #InF, , Byte
FrN% = (ASC(Byte) AND &HF0) \ &H10
BkN% = (ASC(Byte) AND &HF)
NewByte = CHR$((BackNib% * &H10) OR FrN%)
PUT #OutF, , NewByte
BackNib% = BkN%
got& = got& + 1
LOCATE 2, 1
perc% = INT(got& / flen& * 80)
PRINT STRING$(perc%, 219) + STRING$(80 - perc%, 176)
END IF
LOOP
END IF
CLOSE #OutF
CLOSE #InF
This code was completely written down from the top of my head. I didn't test it using QB. Perhaps there are some bugs, but this is due to not having tested it. Hope it works
EDIT: Someone able to test this? Thanks.
Posts: 3,616
Threads: 287
Joined: Jan 2003
Whitetiger: No, no: First I XOR the character-code with the code user enters. Then I re-encrypt it by XORing it with the code user enters, minus 3.
Hence double-encryption.
(BTW I've made a very strong encryption algo...I call it 2D encryption, because there are two encrypted characters for every character that you encrypt. I've yet to find a way to decrypt it, though.)
Neo: Goodness! I didn't test that, but it looks very strong.
f only life let you press CTRL-Z.
--------------------------------------
Freebasic is like QB, except it doesn't suck.
|