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

i just made a cute 'hello world' app

Name: Anonymous 2017-07-29 17:56

https://pastebin.com/qprgVAmc
(couldn't post it here)

Name: Anonymous 2017-08-04 6:44

>>39
you're a transhumanist and occultist at the same time? sounds stupid but also kinda cool. you could be the next Terry if you focused on a bigger project instead of being a preprocessorcudder

Name: Anonymous 2017-08-04 6:47

>>40
Sounds more like a luciferian who wants to use technology to create a heaven on Earth where the filthy evils of the Earth are celebrated and indulged in, and God's judgement will never be felt because you tether your soul to Earth through technology. But these foul technocrats will be disappointed when they find out what God has in store for them. The punishment for trying to evade God's wrath is as ironic as it is brutal.

Name: Anonymous 2017-08-04 7:15

>>41
>preprocessorcudder
Why people assume i only write C headers all day? I barely spend few minutes per day on them.
Last time i edited a C header was a week ago.

Name: Anonymous 2017-08-04 7:24

>>42
>tether your soul to Earth through technology
You never heard of technologically assisted projection?
With specific brainwave entrainment from sound/light or devices which change the magnetic field of the brain you can engage in projecting to astral/mental planes much easier.
From my point of view technology is a tool.
Your luddite attitude doesn't appreciate how far humanity progressed with help of technology:
At best you segregate technology into accepted(e.g. books) and too-modern(CD-ROM) parts, like the Amish, unaware that world as it exists now is interconnected, interdependent web of technological achievement and progress, without which modern agriculture, communications(incl.this site),medicine, science and even religion would not exist in their current form.

Name: Anonymous 2017-08-04 8:29

>>41
``In effect, we conjure the spirits of the computer with our spells...
The programs we use to conjure processes are like a sorcerer's spells...
Thus, like the sorcerer's apprentice, novice programmers must learn to understand and to anticipate the consequences of their conjuring.``

Name: Anonymous 2017-08-04 8:39

>>43
because that's the only interesting thing you're doing. userscripts are boring
>>44
but those dubs speak the truth

Name: Anonymous 2017-08-04 9:26

Name: Anonymous 2017-08-04 9:53

>>46
C headers are perhaps the most mundane and boring part of what i write.
There is nothing extraordinary in macro composition, its lack of imagination of C users that restricts them into the pattern of using only simplest function macros.
Not only that, its highly dependent on GCC and C11 features so they're mostly showcase of what can be done with C, not what C code is normally.
C macros are versatile, but they aren't that great as a real language.
Building everything around text macros is an anti-pattern, like Boost preprocessor libraries.
Instead i prefer to think of them as underutilized tools of abstraction that can be added individually: without converting a project into macro-based sublanguage .

Name: Anonymous 2017-08-04 10:14

>>48
so tell me about the interesting things you write. userscripts to filter reddit content are not interesting

Name: Anonymous 2017-08-04 10:27

>>49
I'm in a process of movin and rewriting wiki articles for wikidot.
The more interesting stuff i write isn't program but more of philosophy and design articles.
The only interesting algorithm stuff that i think will be interesting to you is http://void.wikidot.com/code:crypteria11-h

Name: Anonymous 2017-08-04 10:57

>>50
I actually read most of the stuff you posted on frozenbbs and your reddit wiki. I find some of your game design ideas relatively interesting (IIRC we talked about it on progrider - I'm the guy who's making that vidya which is supposed to be part euro-boardgame and part CYOA). I thought you were talking about code though.

as for Crypteria, I'm a bit of a crypto nerd but I haven't attempted to understand (or possibly cryptanalyze) it yet. but I'm curious - what kind of cipher is it? is there any kind of security proof for it? did you use any common approaches in cipher design (e.g. Feistel networks) or is it something you invented from scratch?

Name: Anonymous 2017-08-04 11:23

Name: Anonymous 2017-08-04 11:35

>>51
its a stego-cipher:
1.It creates random bitArray.
2.It selects bit Locations by getting them from password.
3.Input Data is saved in those bit Locations.
4.bitArray is mutated and encrypted.
5.decryption runs it in reverse.
>is there any kind of security proof for it
No. The difficulty is that Input doesn't result in same output and output is 90% random garbage filler data.
i.e. all encryptions result in different files that decode back to one file.

Name: Anonymous 2017-08-04 11:51

>>53
4.bitArray is mutated and encrypted.
what does it mean? how is it encrypted?
No. The difficulty is that Input doesn't result in same output and output is 90% random garbage filler data.
so it's a probabilistic cipher? that's not enough for it to be secure.

based on your description, it doesn't look like a good cipher:
1. passwords don't make good keys and keys don't make good passwords. you should read up on password-based key derivation and password hashing to learn how to deterministically create a strong key from a password.
2. it seems vulnerable to replay attacks and chosen plaintext attacks: by repeatedly encrypting messages (or just the same message) and observing the resulting ciphertexts, the attacker can determine what gets mutated and how, which allows him to distinguish garbage from input bytes. depending on how choosing bit positions from key works, it might be possible to recover the key based on that. of course step 4 (encrypting the array) might make it unexploitable: if you encrypt the array with AES then I don't think there's anything the attackers could do. but then again, that would mean that AES is secure, not Crypteria

this all might sound like bullshit complaints if you're not really into crypto but if you have experience with real-life attacks (e.g. on WEP or SSL), you'd know that it makes the cipher suck.

Name: Anonymous 2017-08-04 11:54

also check my dubs

Name: Anonymous 2017-08-04 12:30

>you're not really into crypto
I never actually cryptoanalyzed it, i'm not into that.
My crypto knowledge is limited to few wikipedia articles i read few years back,
The whole idea of crypteria cipher is essentially Shannons "Confuse&Diffuse" in form of steganography.
https://en.wikipedia.org/wiki/Confusion_and_diffusion <-- this is the idea

Name: Anonymous 2017-08-04 12:47

>>56
yeah, I looked into your code and it does look a lot like confuse and diffuse (an aside: your code would be more readable if you joined the indentation cult). so it's stronger than I initially assumed. that's not to say that it's strong - I wouldn't be surprised if it ends up being fairly easy to cryptanalyze. I might try doing it some day, might be fun.

Name: Anonymous 2017-08-04 12:52

if you encrypt the array with AES
Crypteria11 doesn't depend on anything but standard headers.
There is no AES, the only foreign code is the PRNG(xorshift).
Its just ~300 lines of code, you can read them all in 5 minutes.

Name: Anonymous 2017-08-04 12:54

>>58
see >>57. it's better than I expected, but that doesn't necessarily mean it's good (might be good, might be bad, too early to tell).

Name: Anonymous 2017-08-04 13:04

AES sucks

Name: Anonymous 2017-08-04 13:21

>>60
why?

Name: Not >>60 2017-08-04 13:44

>>61
S-Boxes are to timing attacks what bread crumbs in the kitchen are to mice. See djb's Making Sure Crypto Stays Insecure.

Name: Anonymous 2017-08-04 13:51

>>62
thanks Anon, I'll read that. what does djb recommend for symmetric block cipher design instead of s-boxes?

Name: Anonymous 2017-08-04 15:10

>>59
Its somewhat weak in the sexxorseed function, could be replaced by rhash from http://void.wikidot.com/random-h (the rcrypt there is speed-optimized encryption, that would be much easier to cryptoanalyze btw, its much weaker than crypteria i think)

Name: Anonymous 2017-08-04 16:29

http://void.wikidot.com/code:crypteria12-h
updated to use Rhash and simplified setsecret as well(code is also cleared abit and debug/timing stuff is reduced).

Name: Anonymous 2017-08-04 18:13

>>63
Ops that can be done in constant time, like the standard bit ops, bitshifts by a constant, addition, maybe multiplication. Multiplication is iffy on some CPUs because it's complex enough that some vendors try to be clever. djb designed Salsa/ChaCha with this in mind.

Note that by constant time, I mean constant with regard to the input value, not size as in complexity theory. This naming conflict makes it incredibly hard to find material on constant time algorithms, which are arcane outside of cryptography.

Name: VIPPER 2017-08-06 1:43

>>27
Kyuute!

Name: Anonymous 2017-08-06 2:06

>>65,67
#pragmaonce //Cr
yp teria12stegocipherhe a d e rb yFr
o ze nVoidlicensedunderhttps://www.g n u.org/lice
ns e s/agpl.html/*Generalencrypti onp rocess1.passwo r
disconv ertedtosecretkey(withconstsal t)2.anarray64tim
eslarge r thaninputisseededwithrandomdata3 .inputbitsareset t
oarraybits,withgapsbetweeninputbitsderivedfrom 1+xorshift()&63[1-64
gaplength]4.arrayisrotatedas64bitints,usingrota tedatafromxorshift()&
635.3passesofdifferentlyseededxorshift()areappliedtoresultwithxor,add,sub
stractasreversibleoperations.6.D ecryptionrunsthe2-5stagesin reverse.note:t h
ealgorithmisnamedaf terKr ypteria(thesymphonicmetalband)no tCrypteria(me
ta lba nd).*/#include<stdint.h>//intsizes#include<stdlib.h >//malloc#i
nclude< stdio.h>//fopen,fread,fwrite,sprintf,perror#include< string.h>/
/strle n#include<x86intrin.h>//__rdtsc()#include<inttypes. h>staticuin
t64_txorseed[2];staticconstuint64_tsalt=0x1234567887654321UL L ;//e achimplemen
t ationcanuseauniquesalt(changesalgo)//PartialDecryptionSTREN GTH(changesalgo:f
orm1<<N)#defineCRYPTERIA_PD_STRENGTH(1<<12)//amountofprecomputedxorshiftsstaticuin
t64_trhash(uint8_t*input,size_tlen){uint64_tseed[2]={0x1234567887654321ULL,0x23456
78876543211ULL};uint64_trnds1,rnds0,result=0;uint64_t*data=(uint64_t*)input;for(siz
e _ti=0;i<(len/8);i++){rnds0=seed[0]^data[i];rnds1=seed[1];result=rnds0+rnds1;rnds1^
=rnds0;//rotl(rnds0,55)see d[0]=((rnds 0<<55)| (rnds0>>(64-55)))^rnds1^(rnds1<<14);/
/rotl(rnds1,36)seed[1]=((rn ds1<<36)|(r nds1>>( 64-36)));}for(size_ti=(len/8)<<3;i<
len;i++){rnds0=seed[0]^(( uint64_t)i np ut[i ]<<(8*(i&7)));rnds1=seed[1];result
=rnds0+rnds1;rnds1^=rnds0;//r otl(rnds0, 55)seed[0]=((rnds0<<55)|(rnds0>>(64-55)))^rnd
s1^(rnds1<<14);//rotl(rnds 1,36)seed[ 1] =((rnds 1<<36)|(rnds1>>(64-36)));}constc
harrsalt[]="Crypteriaisas tro n gstego-ci p h erbase donclassicideasofConfusionandDi
ffusionbyClaudeShannon";uint64 _ t*salt8=(u i nt64_t*) &rsalt;for(size_ti=0;i<(sizeof(
rsalt)/8);i++){rnds0=seed[0]^ salt8 [i];rnds1 =seed[1] ; result=rnds0+rnds1;rnds1^=rnd
s0;seed[0]=((rnds0<<55)|(rnd s0> >(64-55 ) ))^rnds 1 ^(rnds1<<14);seed[1]=((rnds1<<
36)|(rnds1>>(64-36)));}result =see d[0] +s eed[1 ];returnresult;}staticuint64_
trhash64(uint64_txseed){uint6 4_ tt=x s ee d; r e turnrhash(( uint8_t*)&t,8);}s
taticinlineuint6 4_trotl(con st u i n t64_tx,i ntk){return(x<< k)
|(x>>(64-k));}st aticinline vo ids etxorsee d(uint64_ta,uint64
_tb){xorseed[0]= rhash64(rhash 6 4 ( a ));xor seed[1]=rhash64(r
hash64(b));}sta ticinlineuint6 4_txoro s hiro128plus(void
){//Source:xorosh iro.di.unimi.i t /xo roshiro 128plus.cconstu
int64_ts0=xorsee d[0];uint64_ts1 =xorseed [1] ;constuint64_tre
sult=s0+s1;s1^=s0 ;xorseed[0]=rot l( s 0 ,5 5)^s1^(s1<<14);
xorseed[1]=rotl (s1,36);returnres ul t ;}//sec retkeyfrompassw
ord(maxusefulchars:16)typedefun i o n Pwse ed{ uint64_ts[2];ch
artext[16];}pw seed;staticpws eeds e cr et;stat ic in lineuint64_
tclearbit(uint6 4_tv,uint8_t loc ) { retu rn v&(~(1ULL<<l o
c));}staticinlin euint64_tset b it(u int64 _ tv,u int8_tloc ,
uint64_tbit){r eturnv|((bit <<loc) );}st a t i cin lineuin
t64_tgetbit6 4(uint64_tv, uint8_tl o c){r et u rn(v&((1
ULL<<loc )))>>loc;}stat icin line u in t6 4 _tgetbit
8(uint8_t v, uint8_tloc){ ret u rn( v&(( 1 < <loc)))>>loc;}staticin
linevoidse tsecre t(pws e ed* ssecret,c ha r*p ass,uin t
6 4_t pwlen ){ss ecr e t-> s[ 0] = rhash 6
4(r hash64(sa lt+ rha sh((uint8_t*)pass,pwl e n ) ))
; ss e cret - >s[1 ]=rhash 6 4 ( sa
lt^(~ rhas h64(s secret-> s[ 0 ] ))) ; } //== ===
= = ==== = = ===+++++ENC RY P T ++ + +=== = = === ====== =/* en
cry pt I nput :data ,pa s sword ,d ata length,pas swo rd len gth Outp ut:
re turn edencryptedarray, re sul t size ispas sed to data _ l enpo int e r .* ///
xorvec to rfo r d i f fused bit l oca tio nsstaticu i nt8 _ t xo r dat
a[CRY P TE RIA _PD_ST RE NGTH ];/ /xo rv e ct orf orr eversi bl
etransfo rms sta t ic ui nt 64 _txorda t a2[CRY PTE RIA_ PD _ST
RE NGTH ] ;// = = = == = === = === SE TXO
R S HIFT ARR A YS s t a t icin li ne
v oid s etx ordat a( v oi d) {f o r( siz e_ ti= 0;i <C
RY P T E R IA_PD_S TRE NG T H;i+ +){ x o rda ta [
CR Y P TER I A_ P D_S TRENGT H- i- 1] =1 +(( xo ros
hi ro1 2 8 plus( ) >> 3)&6 3);}} st at ici n
li nevo idse tx ordata 2 (vo id) { / / f orcedr a ndo
ms k ips iz e_tskip=(s ecr e t. s [ 0] &(C R Y
P TE RI A _ PD_ S T RENGTH- 1 )) ^ ((
se c r et.s [ 1] >> 16 ) &(C RYP TERIA _P D_ S T
REN G TH- 1) ) ;for ( si z e_ ti= 0 ;i
<s ki p;i++){x or o sh iro12 8
pl us(); }for ( size _ti =0 ;i <CRY PT E
RIA _PD_STRENGTH ;i + + ){ xor data 2[CR Y PTERI A _
PD_ STR EN GT H-i- 1] = x or o sh i ro 128 p
lu s (); }}// de pend s onCR Y PT ER IA
_PD_ST RE NG T H b e i ng1< < nst a t
icinli ne uin t 8_ tg e t ga pv al (s
ize_ tdistan ce ) {s ize_t ga p
=( d i sta nce& (C RYP T ER I A_PD_ST RE NGT
H- 1));if(gap ==0) {se tx o rda ta ( );} ;r
e tu r nx or da t a[gap];}st a
ti cinli neu i nt 6 4 _tgetxo r v a
l( s ize _t d i s tance){si z e_t
p la c e =( d i s tance& (CRYP
TER I A_PD_S TR E N GT H - 1 )
) ;if (pl a ce= =0
) { set x o r
da ta 2 (); } ; re
tur nx o r d at
a 2[p l a ce
] ;} // = ==
=== === == = = =++

Name: Anonymous 2017-08-06 5:53

>>68
lol

Name: Anonymous 2017-08-06 10:04

>tfw /prog/ forcefully kawaiifies your programs with some ascii picture script(probably written in FIOC)

Name: Anonymous 2017-08-07 16:00

>>68
This is pretty cool.

Name: Anonymous 2017-08-07 16:04

>>68
This is awesome. Are you doing that manually?

Name: Anonymous 2017-08-07 17:37

>>72
I sure hope so
otherwise that's pretty dumb

Name: Anonymous 2017-08-07 20:25

somebody wanted some shitty fioc that prints an extra newline

#!/usr/bin/env python3
import sys
from pathlib import Path

if len(sys.argv) < 3:
sys.exit("Usage: anus.py SHAPE TEXT")

row = []
shape = [row]
for c in Path(sys.argv[1]).read_text():
if c == '\n':
row = []
shape.append(row)
else:
row.append(c != ' ')

stack = list(Path(sys.argv[2]).read_text()[::-1])
def fuck():
c = '='
while len(stack) > 0:
tmp = stack.pop()
if not tmp.isspace():
c = tmp
break
return c

for row in shape:
ln = []
for v in row:
ln.append(fuck() if v else ' ')
print(''.join(ln))

Name: Anonymous 2017-08-08 3:41

GNU GENERAL PUBLIC LICENSE
But what if I wanted to add this code to my ENTERPRISE app?

Name: Anonymous 2017-08-08 12:01

>>75
Make sure no one's looking first.

Name: Anonymous 2017-08-08 13:04

>>75
They can't tell

Name: Anonymous 2017-08-08 13:47

Name: Anonymous 2017-08-08 15:01

>>78
How would they know?

Name: Anonymous 2017-08-11 2:33

>>78
snitches get stitches

Newer Posts
Don't change these.
Name: Email:
Entire Thread Thread List