Thursday, April 20, 2017

4/19 One Day Off

Poor Sora, he had quite an adventure over the weekend.

Woah, this is just like an old school typewriter, but since it's in the "digital world" I think of it as some portal millions of whatever's away. But that's not it at all.

It's the fucking future again!!!


Woah, look at these things. Everybody owns one because it would be ridiculous not to. And smartphones, come on.

Oh, this is really special. It's like a typewriter that shows up all sorts of things.

So let's take a minute as to why old people don't quite understand "computers" the way that younger people do.

So, it's atypewriter. That's wha i remember using and that's one of the things it does. I mean, it looks like a typewriter?

So then everybody has phones, and there aren't even real buttons. but sure enough, it's a digital typewriter, too.

so it displays shit. But it also has the ability to send it to every oher computer lined up with it to display the same thing. This means that other people can form groups and put the information in an easily sharable place so that everybody else can read it.

Oh man, this is so scary. lol.

yea, so there are all of these sharable typewriters. And everybody has the ability to push and read anything on them? oh man, that's the scariest thing i've ever come across.

But i went way beyond that. The typewriter can play games. Oh, and just recently they took typewriter games where you have no fucking clue. 3D virtual worlds.

So from somebody that knows how a mechanical typewriter works, let's look at it from my perspecitive.


So imagine a mechanical typewriter.  You have the keys and the paper.
so what we wanted to do was create a machine that does the exact same thing as an actual typewriter but the ability to display what you type not on paper, but on a little screen. think about the underlying mechanics of that device are.

Oh, without moving parts that the person using it would really see. So the letters almost magically appear. ok, that's like generation 1.
So, there is a little machine that's connected to the keys. It is a bunch of wired circuits, so when somebody presses one of the buttons, it triggers some mechanism that moves little cursor ahead, as well as prints the last letter butten you pressod. And again, it's just like that mechanical typerwiter you had, but science got it to work as this electric device.

but mechanically, it's exactly the same. Like a typewriter with whiteout.

And, there's arrows that let you edit anywhwere on the page at any time.

e're not talking about a mouse or harddrive or anything else. just as much as i described and nothing more.

from there

i want the text to look really nice. Like, i want the screen to be so good that i can't see the dots in the letters anymore. I also want the ability to store like millions of pages text. Because you might be storing thousands of pages depending on how much you write, and you're not going to want to print it all, we are going to put some buttons that let you save what you're working on, clear the screen, or open up one of the pages you wrote before. but we won't let you put one sheet on top of another sheet, only one sheet gets shown at a time.



Ok, from there (that was actually backing up a bit)

well, if the thing the type, i could probably make it also draw in at least black and white on this screen. But, it's really expensive to actually be able to toch the screen, so i'm going to give you a little up/down/left/right arrow that can move around a letter an the screen, and save wherever you say it should.

eventually, we decided that sucked, so we invented the mouse, which is just the typewriter buttons being pressed to move a little arrow around. Ultimately, we went even beyond that to give you wifi mice, touchpads, touch panels, but that's really all it is.

ok, so we now have a mouse.
what if instead of words in part of the little device, there was a picture of a button. and then people wouldn't accidentally press the save/clear/load buttons with tehir fingers anymore. and they have to highlight it with the arrows and press an "activate" button

So advance upon advance, it's not some deep mystery. the typewriter can only do a few things, so we just use that to build up thinsg that loook like they are magic. buttons, scrollers, all of that just manipulates the pages of text to show you things a different way. games. getting the pictures of the words on the screen requires a constant little electric mechanism to send repeated commands in ways i can listen for, run through an equation, and feed commands back into it to display different things at different places on the screen. Back in the day, i could only change the color of one dot per cycle.

But it needs to do that fast enough so you can type at least 100wpm. It needs to update faster than once a second for sure!

so how fast? 100 times a second? 1000 times? i mean eventually, we have that up to 3.6 billions times. here's the reason why.

So everytime we get that signal to do an equation and feed it back into the typewriter, we can also do math equations, too. when you press the buttons on a calculator, you are just filling in the equation based on what information.

from here.

it needs to have a way to know what you've written and save it. so obviously if you have thousands of pages, you'll want a way to look through them at some point. they've been nice to give me some pages that the user can't see as well.

who am i explaining this to?

sora got cut off. oh no. what happened to my opinion of him? i love him, but he's different. he feels so far away. and i just want to see him and make sure everything is ok. he's so great. anyway i liked young pictures of sora. maybe i'll get more. the real guy is so beautiful i think i'll be ok :)

so what's the problem? everybody has a typewriter, remember? these things are soo convenient. not just text anymore, these things can display maps? these things can do crazy math.. these things can display some amazing games and do it in 3D. sick.

but that's the whole world. webpages are text that we can move and change the color of in predefined ways (that we also stored on a sheet) I can send sheets to people, they can send me sheets. it's automatic, invisible, everywhere. i'm being bombarded by thousands of pages upon pages every second.

here's where it gets interesting. Every computer has a number. if i hook my typewriter up to yours, we can send pages to each other. i mean, who knows. maybe we're working on a draft for a book, and we both want to read it at the same time? i'm a mathematician, and i created an equation i want somebody else to look at. ok, valid use. Or, i'm a teacher, and i want my students to send me their data. I mean i can also write on a card and read it if i need to.

anyway, we share data.

So each typewriter has a number. like a serial number. when i hook it into a special box, i can send pages only to one person that's also connected to the special box as long as i specify the number. the box will make sure the other typewriters don't get your message.

if i connect that box to another box just like it, all typewriters i'm connected to can send anything to anybody. eventually, everybody's on the outside of this huge circle of typewriters and everybody has a direct line of connection to any other typewriter in the whole world. as long as i know the number. You might think - yea, but how does this work now?

ebay.com? yahoo.com? when you want to visit one of those webpages, you send a page to the typewriter with serial number 8.8.8.8 or 8.8.8.4, it does an equation on the name to figure out a page, reads a page (in the next equation, then the next) eventually finds the number of another typewriter, and sends THAT typewriter a page that says (typewriter at 133.32.12.111 wanted you to send the page called "ebay.com"). That typewriter gets your message, sends it back. You then display it. they are alll connected.

news, maps. it's all just pages. and it's got a cute futuristic feel to it, and i think that's what makes it so scary to me.

everybody has a typewriter, and they are all connected all the time. You can't right now control what it sends and receives page-wise, or what equations it's running, because you didn't know it was doing those things all the time. It's always churn churn churning away because it's waiting for you to press one of the buttons to turn on or or click the mouse or press Q. and microsoft has engineered these typewriters so they are very powerful calculation devices. it's so easy to write equations and run them - and ultimately turn pages into instruction sheets that i can feed back into the thing to see the output.

my job is to write the pages, turn them around, and put them back in. I've written thousands of pages of instructions. my life's work has been writing every way to make a video game look like a video game for the last 10 years, and i'm a specialist in having two simulations sync up between to active real-time players on two different typewriters.

so here's a page, that's like 1000 letters across and 800 letters tall.
it is just a picture of something. it's super picasso. whatever.

so i also have another page, and it's some lines with equations with missing numbers

so i take out a fresh sheet, and i start writing.

Take THIS color from THIS location (that the artist told me about) and run it through THIS equation
and then take THIS color from THIS location and run it through THAT equation
and then take THIS color from THAT part and run it through THIS equation

now take the answers of all those and put them in THIS equation
and out put...
orange to

57
..
592

now go back up to the top and do it again!

but my sheets are much much longer, and instead of changing this picture, it says hey da vinci, you write it on a blank one and then display it. and for one of these equations, say if somebody is holding this button down, write THIS color HERE.

eventually, we figured out a way to ignore commands
so when we're done running an equation, instead of putting a color somewhere, it gave us the ability to say hey, the answer to the next equation will determine if you skip the next line.
then we also gave you a command that says "jump to any line on this page"

This gave us control flow.
if EQUATION(x, y, z)
GOTO LINE 6
EQUATION1()
EQUATION2()
EQUATION3()
Line6Equation()

then you have gotos and jumps, and you can do loops. it's ery entertaining to watch it jump around. so maybe math my way to make it draw more than one dot in one place in one color.

Shapes.

draw this picture, display it, erase it, run these equations, draw the picture, display it, erase it, run these quations... etc

now things are moving on their own
and we're just waiting for somebody to press the button churn churn churn

so anybody you've sent data to usually keeps a copy of what you sent them.
see what you need to open a bank account, then see who has that information.

ok, so hacking

i write these automated equation sheets for changing the pictures for fun.
There's also an equation that lets you take a page from memory and send it to somebody
and because i can loop, i can ask the typewriter very nicely to send every page it has to my typewriter (i know the number)
So all somebody has to do is run my sheet, and i have all of their data.

so how do you run a sheet on somebody's computer without them knowing?
usually, you have to say "yes, run this program", but your computer is always running stuff.

but not just one at a time. it's got like a little switching mechanism. so if it's running one sheet, it does equation1(), then it sees which sheet is next, then runs that sheet, runs one equation, flips, etc.

and this program is the operating system.

the operating system rotates what pages are being run, and allows you to put new pages into this rotation. this allows you to literally abstractly run a web browser as one page, play some solitare somewhere else, and then look at pictures or type a whole new page up seemingly at the same time.

but realistically, even the ones you aren't actively typing on, like this explorer in the background, is still being updated because you might click on it. the operating system handles it so the thing you're working on feels the fastest (by giving it more guaranteed time to do equations)

so some programs have the ability to put other programs into rotation. here's my goal.

1) have the user download my instruction sheet. they might want to. if they know what it does, they probably don't want me digging through every single page on their typewriter. there's like tax stuff on this thing.

2) have the user put the program into rotation

3) have it run long enough so every page is sent

1 is easy. You can put this instruction sheet in a ton of places. You can put this instruction sheet inside the instructions of a game, or a website, or anywhere, really. somebody could have written the instruction sheet's equations and numbers to do the mean deed and when you look at it on the typewriter as a page, it looks like a fish. anyway, it's not hard. how many pages do you just download and don't even look at?

2 is tricky, because Microsoft and all sorts of companies on the web know people want to write this program, so they make it hard for this program to execute. Same goes for programs that might erase really important pages, or erase instruction sheets that are necessary to make the typewriter even function. so if you try to execute something like this, microsoft will ask you "do you really want to allow this program to do this thing?" before you always click yes.

Since that's hard, maybe we'll go a back-door route. Maybe find a program that already has the permission to run these equations without trouble to start the page for me. I won't need the user's permission then (the "desktop" or the background lets you run these types of programs, but will warn you before you can hit yes... duh)
but there are other programs on here that will just send pages willy-nilly to people. you aren't constantly clicking a box that lets chrome send pages to 8.8.8.8. no way. so maybe i'm going to find some equations in their instruction sheet that if i put some funny numbers into it, it will jump to somewhere or read a color from somewhere i want it to, and eventually screw up so bad, i get it to read and execute my commands from a different sheet like an old record player would.

so that's hacking. i put an instruction shet somewhere on your computer where you either execute it yourself or put it in a place where another program you use picks it up and runs it. eventually, i have your tax returns.

well, you can do a couple things. you can encrypt your pages. essentially run the words on the page through an equation that gives you a page you can't understand. then you take that page, run it through a different equation, and it comes back exactly like you asked for. the "equations" each need two variables - your sheet, and a number. then that number becomes a key to unlock and lock your data. pretty handy.
if it was a 4-digit pin code, i can just write an instruction sheet to try all 10,000 combinations, and i'll look at each one until i find the one that's actually readable, and then i'll know your PIN too for the rest of the files. or, we make that number long - SUPER long. a number with hundreds of digits. I could "brute force" it but eventually they just make the number longer and i barely get through a few billion keys before i give up. passwords work the same way.

but then again, some of those keys are stored on your computer in places that are easy to get to. experts then lock those keys up with even more secure keys that maybe only the typewriter can read from, but even those keys can be read. security experts know how these keys are work, where they are stored, how they can be accessed, and how to make them even stronger so when computers get more powerful and even longer keys can be brute-forced, they will have the next difficult to crack technology ready to go.

wifi works this way

we're just radio-ing each other pages. what's stopping me from listening to your pages? they have been changed before sent, and both sides know the key using some really really fancy math.

No comments:

Post a Comment