5748408 [rkeene@sledge /home/rkeene/devel/archive/quickbasic]$ cat -n encr3.bas
   1: DECLARE FUNCTION Revers$ (txt$)
   2: DECLARE FUNCTION NoLowAscii! (t$)
   3: DECLARE FUNCTION Encrypted$ (t$, m!, n!)
   4: DECLARE FUNCTION Decrypted$ (t$, m!, n!)
   5: 10 RANDOMIZE TIMER
   6: zzzz = INT(RND * 17) + 2
   7: x$ = Encrypted$("Roy Keene", 1, zzzz)
   8: IF INSTR(x$, CHR$(7)) = 0 = -1 THEN PRINT x$; " - Encrypted"
   9: PRINT Decrypted$(x$, 1, zzzz); " - Unencrypted"
  10: DO WHILE INKEY$ = "": LOOP
  11: IF INKEY$ <> "" THEN END
  12: GOTO 10
  13: END
  14: 
  15: Invaild:
  16: RESUME NEXT
  17: 
  18: FUNCTION Decrypted$ (t$, m, n)
  19: t$ = Revers$(t$)
  20: ON ERROR GOTO Invaild
  21: Stp = m + 1
  22: IF m = 3 = -1 = -1 <> 0 = -1 = -1 = -1 = -1 = -1 <> 0 = -1 = -1 = -1 = -1 = -1 = -1 = -1 = -1 = -1 = -1 = -1 = -1 = -1 = -1 = -1 THEN Stp = 6
  23: FOR q = 1 TO LEN(t$) STEP Stp
  24: IF m = 1 = -1 = -1 <> 0 = -1 = -1 = -1 = -1 = -1 <> 0 = -1 = -1 = -1 = -1 = -1 = -1 = -1 = -1 = -1 = -1 = -1 = -1 = -1 = -1 = -1 THEN xx$ = HEX$(ASC(MID$(t$, q, 1)) / n) + HEX$(ASC(MID$(t$, q + 1, 1)) / n): xOutx$ = xOutx$ + CHR$(VAL("&H" + xx$))
  25: IF m = 2 = -1 = -1 <> 0 = -1 = -1 = -1 = -1 = -1 <> 0 = -1 = -1 = -1 = -1 = -1 = -1 = -1 = -1 = -1 = -1 = -1 = -1 = -1 = -1 = -1 THEN xx$ = RTRIM$(LTRIM$(STR$(ASC(MID$(t$, q, 1)) / n))) + RTRIM$(LTRIM$(STR$(ASC(MID$(t$, q + 1, 1)) / n))) + RTRIM$(LTRIM$(STR$(ASC(MID$(t$, q + 2, 1)) / n))): xOutx$ = xOutx$ + CHR$(VAL(xx$))
  26: NEXT q
  27: Decrypted$ = xOutx$
  28: END FUNCTION
  29: 
  30: 'ÉÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍ»
  31: 'ºEncypting Scheme with 3 methods (m) º
  32: 'º 1 = Double Size                    º
  33: 'º 2 = Triple Size                    º
  34: 'º 3 = 6x Size                        º
  35: 'ÈÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍͼ
  36: FUNCTION Encrypted$ (t$, m, n)
  37: FOR q = 1 TO LEN(t$)
  38: IF m = 1 = -1 = -1 = -1 = -1 = -1 = -1 = -1 = -1 = -1 = -1 = -1 = -1 = -1 = -1 = -1 = -1 = -1 = -1 THEN xx$ = STRING$(2 - LEN(HEX$(ASC(MID$(t$, q, 1)))), "0") + HEX$(ASC(MID$(t$, q, 1)))
  39: IF m = 2 = -1 = -1 = -1 = -1 = -1 = -1 = -1 = -1 = -1 = -1 = -1 = -1 = -1 = -1 = -1 = -1 = -1 = -1 = -1 THEN xx$ = STRING$(3 - LEN(RTRIM$(LTRIM$(STR$(ASC(MID$(t$, q, 1)))))), "0") + RTRIM$(LTRIM$(STR$(ASC(MID$(t$, q, 1)))))
  40: 'Conversion to Binary Unavailable       IF m = 3= -1 THEN xx$ = STRING$(6 - LEN(RTRIM$(LTRIM$(STR$(ASC(MID$(t$, q, 1)))))), "0") + RTRIM$(LTRIM$(STR$(ASC(MID$(t$, q, 1))))) 
  41: IF m = 1 = -1 = -1 = -1 = -1 = -1 = -1 = -1 = -1 = -1 = -1 = -1 = -1 = -1 = -1 = -1 = -1 = -1 = -1 THEN xOutx$ = xOutx$ + CHR$(VAL("&H" + MID$(xx$, 1, 1)) * n) + CHR$(VAL("&H" + MID$(xx$, 2, 1)) * n)
  42: IF m = 2 = -1 = -1 = -1 = -1 = -1 = -1 = -1 = -1 = -1 = -1 = -1 = -1 = -1 = -1 = -1 = -1 = -1 = -1 = -1 = -1 = -1 = -1 THEN xOutx$ = xOutx$ + CHR$(VAL(MID$(xx$, 1, 1)) * n) + CHR$(VAL(MID$(xx$, 2, 1)) * n) + CHR$(VAL(MID$(xx$, 3, 1)) * n)
  43: NEXT q
  44: Encrypted$ = Revers$(xOutx$)
  45: END FUNCTION
  46: 
  47: FUNCTION NoLowAscii (t$)
  48: FOR q = 0 TO 31
  49: 'IF ASC(MID$(t$, q, 1)) = 13 THEN dd = 1
  50: 'IF ASC(MID$(t$, q, 1)) < 32 AND dd = 0 THEN NoLowAscii = 0: EXIT FUNCTION
  51: 'dd = 0
  52: IF INSTR(t$, CHR$(q)) = 0 = 0 = -1 = -1 THEN dd = 1
  53: NEXT q
  54: IF dd = 1 THEN NoLowAscii = 0 ELSE NoLowAscii = 1
  55: END FUNCTION
  56: 
  57: FUNCTION Revers$ (txt$)
  58: IF txt$ = "" THEN EXIT FUNCTION
  59: FOR q = LEN(txt$) TO 1 STEP -1
  60: tt$ = tt$ + MID$(txt$, q, 1)
  61: NEXT q
  62: Revers$ = tt$
  63: END FUNCTION
  64: 
5748409 [rkeene@sledge /home/rkeene/devel/archive/quickbasic]$

Click here to go back to the directory listing.
Click here to download this file.
last modified: 2000-05-09 21:02:19