Show Posts

This section allows you to view all posts made by this member. Note that you can only see posts made in areas you currently have access to.


Messages - alberthrocks

Pages: 1 ... 52 53 [54] 55
796
TI Z80 / Re: Online Calculator Program/App Simulator? (Idea)
« on: July 24, 2010, 08:08:54 pm »
The problem with normal screenshots is that they require the calc to be receiving keys like on the homescreen (which means not during programs, etc.) My solution was a custom interrupt, but they can often get messed up by other things, and it reserves the link port. The 84+(SE) has a hardware setting to send the screen automatically through USB.
What do you mean by linking tests? And if you're saying that won't work, how do you plan to get screenshots?
Just asking ;D

Hmm... I didn't know that. My idea is probably similar to yours - something would be sent, and the hook interrupt would produce a screenshot and send it out.

Linking tests are basically when the program wants to link to another calculator. That is impossible to do (I think), so I'm not worried about programs needing a port.

I'm not sure about how the SilverLink (USB to 2.5mm cable for calc) works. It *might* accept commands to send anything to the calc (not regular sending, but true raw data), but that is beyond my knowledge. Maybe someone here knows? :)

797
TI Z80 / Re: Online Calculator Program/App Simulator? (Idea)
« on: July 24, 2010, 06:58:42 pm »
So basically, if i don't own a TI 84 SE, but you do; If you have this installed I can upload a program to said server. Once approved I can then remotely control your calculator to test things ? I assume there would be a program on my side where I can Implement keypresses and actually see what I'm doing (screen simulation) in real time (minus lag)? It sounds really interesting and it would certainly be quite an achievement (and undertaking). I'm thinking a bit differently though... Maybe using the server to play linked games? >:D (IE calc connected on each end and the server to pass data between the two). I wonder what else could be done? Anyhow, as I said it'll be one hell of an undertaking, but I'd love to see where it could go. ;)

Yes, yes, and it's definitely something for the future. :)
VERY extensible, especially since it's something also in Axe. :D

Hmm, If this ever came true, I might never hook my calculator to my computer again :P


But seriously, this might not be a good Ided, some troll or a guy having a bad day, might, do something bad. I know there are a few programs out ther that are able to invalidate OS's


But, what do I know? Give it a shot!

No worries! Just don't install/run the client program, nor install the app or run it, and you're pretty much fine. :)
As for security, there's some mockups I've done that I have yet to publish. I'll just say that it's pretty hard to get past security. Of course, this idea is pretty awkward as well, so it might be generally a bad idea. But we'll see. :)

I am already working on a client side program (Java, but obviously there are native files) which can access the usb.  It was designed to be used in conjunction with a battle network, or pokemon like trading system.  Using a real calc over a network is going to be slow as anything, there is no point to it.  If you want to program, do it on your own calc.  If you want to test compatibility, release it, and then get bug reports back.

Also, I don't know as you can access usb from python directly.  Anyway, I think it would be rather pointless as it would be horribly slow.  I personally don't like the idea of someone else messing with my calc, and I don't think others do as well.

Just my opinion though.  I can help you with usb a little if you need it.  Only the mac version is done so far. I am currently writing the java part around that.

Ahh, interesting. Your Java client is for the calc, right? And does it also have a corresponding calc program/app?

I personally don't like Java, since it's slow, and quite crazy to compile. Python is a lot easier. :)
PyUSB is a python library to access USB devices, and is cross platform. It uses libusb mostly I think.

But I won't know what to do anyway. My idea is for Quigbo to develop the calc side AND the PC side for the communication, then I'll port it back to Python and such. (Or he could just specify the way to contact the calc)

This idea hopefully isn't too bad - but it is kinda strange, so we'll see.
I think speed isn't too bad. The screenshots are streamed, and the screenshots are probably 100 KB max, maybe even less. It depends on server, PC, and calc speed.

And any help is appreciated! :)

Interesting...
The main problem is getting the screen, though. You have several options here:
The non-USB calcs will have to do communication through the link port, which means programs can't use it, not to mention you'll need a custom interrupt that can't be touched, so programs can't use their own unless it get's chained to yours.
The USB calcs can do as above, or, because the USB hardware has a mode (used for the TI-Presenter, but it can be re-used for your purposes) that'll automatically send the screen, you can use that. You still can't touch the USB port.
It'll be interesting to see you get it work on the 83+(SE)...
But good luck! :)

I don't think there's any way to do linking tests when there's only one calc connected, so I don't think that'll work.
The TI-83s and others can do screenshots and such, even without the USB cable. I'm still not sure about a lot of stuff, but we'll see. :)

798
TI Z80 / Online Calculator Program/App Simulator? (Idea)
« on: July 24, 2010, 02:17:34 am »
(Ironically, this idea kinda relates to the big fiasco that occurred recently. I won't say what, but it happened in IRC, and those who know will know what I mean...
Also, it so happens that this was posted on July 24th, when the next release of Axe Parser is released. Ignore that also!)

I had a quirky idea - to have an online simulator where you can submit programs and apps! :)

Now, why is that useful, even if you have your own calculator?

1) You can test your programs/apps on other calcs for compatibility.
2) Emulators can be buggy, and don't really 100% represent real hardware.
3) No need for borrowing calcs - you have them available online, and you get FULL CONTROL.
4) Did you leave a calc at home? No worries - you can test programs (and even develop them) online!
5) You feel like a control freak since you're controlling someone's physical calculator. ;)

There's probably more reasons, but I'll leave it to you for suggestions and thoughts.

So what is needed before I (or anyone else) starts?

- Axe Parser features to be implemented:
   - Linking with other calcs
   - Linking with computer and communicating with it
     (This would also mean a client program on the computer that can send data and such, in which
     Axe Parser can receive as a string. This is actually the feature I need - the first one is a stepping
     stone for it.)
   - Screenshoting the calculator - maybe a hook?
     If possible, also when ASM programs are running?
     (Or I might be missing a way to screenshot without TI Connect or TiLP...)

So how does it work?
It starts with a person plugging in his/her calculator into their computer. Then, they install software on both
the computer and calculator to allow remote control. Then they sync with each other. When the person
is using the calculator, there's no way to get in. Control will only work when the person runs the app, and
the program on the computer syncs with it.

The computer software then connects to a specific server to say that a person allows their calc to become
a testing ground. The server handles all the requests for testings and such. The server will have a webpage
for requests for testing.

A person wants to test, say, HELLOWRD.8Xp, their very interesting program.
They would file a request, and if approved, be allowed to schedule a time.
At the specified time, the person would first upload the program/app, and then
go to the main page for control. The program/app would be downloaded by the
client program on the donor's PC, and then sent to the calc. The app running would accept
it, save it, and then run it.

From there, the controller clicks keys, which submit commands to the server.
The clients receives commands from the server, which then gets sent to the calculator,
which the calc app receives and emulates the requested key.

Whew! That was confusing, wasn't it? Prepared to be a LOT more confused.

There are 2 ways of communicating between client and server: HTTP and direct.

HTTP:
Code: [Select]
__________                                                                                             __________
|  Client  | GET http://server.com/calc_ctrl.php?id=123&command=getcomm                                |          |
|    PC    |  ------------------------------------------------------------------------->               | Server   |
|__________|                                                                                           |__________|


Direct:
Code: [Select]
__________                                                                                             ___________
|          | Connect to 77.77.77.777:4567 with raw TCP: "KEY_UP"                                       |  Client   |
|  Server  |  ------------------------------------------------------------------------->               |    PC     |
|__________|                                                                                           |___________|


Now we're done! :) Let's go to the FAQ:

FAQ
1) OMG!!! THIS PROGRAM WILL GIVE ME VIRUSES!!!?!!!
No, it won't. A hacker would have to first figure out who to connect to, bypass all the logins,
THEN bypass the PHP security (for the file that sends commands), and THEN bypass program
security. Python will be used for the program, since it's cross platform (Windows, Mac, Linux),
and it's very secure.

2) Can people kill my calculator?
Yes... they can. However, there's 3 things for defense:
 - Real, valid information (name, phone #, etc.) must be provided, and it is verified so the person can't escape from
   punishment if they try destroying your calc.
 - Pressing the ON key will stop the app completely. If they are doing something crazy, you can disconnect.
 - Disconnecting the USB cable will obviously stop remote control.

3) Why Axe Parser?
Because:
 - Basic really sucks for communication. It's slow and really doesn't work while in loops.
   Not mentioning that Basic can't really communicate with the PC.
 - I don't know ASM (well enough), so obviously I can't write it in that way.
 - Axe Parser is a very nice language! :)
 - The developer of Axe Parser is on this forum!

4) ??? (More to come if asked)

The Future
WOW... the future? Yup.
If you haven't realized it, if this works, that calc can connect to the internet! :)
Of course, on a USB tether, but otherwise, it works.
I recall someone attempting this, but it never went anywhere. (Some famous app had it...??? Not too sure)
I'm hoping that if this, or at least parts of this suggestion are implemented,
we'll have a nice connection with the TI and the internet! :D

799
Other Calculators / Re: Let's hack Nspire OS 2.1!
« on: July 23, 2010, 12:23:32 pm »
Here:

http://ti.bank.free.fr/index.php?mod=archives&ac=voir&id=397

OK, I've tried and unfortunately, it's an older version. :(
It seems that the TI community hasn't found the format yet.

See below screenshot.
Red is the file magic number (I think), which is highlighted by the program.
The rest (blue, green) are highlighted by me.
Blue is the header, green is the compressed data.

2.0test.tns is apcalc's TNS, with OS 2.0.
Binder1.tns is the TNS I produced from the program.

(Click to enlarge)


EDIT: Yikes! Looks like I forgot to censor out the directories... :P Oh well - TI still has no right to run around my public files! ;)

800
News / Re: Nspire 2.1 out, don't install it!
« on: July 23, 2010, 12:01:04 pm »
@qazz42: Depends. AFAIK, there's no need for keys, although the community is trying to crack them.
There's already an importable library without ndless being needed. :)
ALSO - if Ndless2 does become a reality, the unreleased RunOS can run the community CAS OS.
Even better - some form of Linux! ;) (With a decent GUI hopefully)

801
Other Calculators / Re: Let's hack Nspire OS 2.1!
« on: July 23, 2010, 11:04:57 am »
@fb39ca4: Really? Is there a link you could provide? It *might* be 1.x though, but I'll check.

802
Other Calculators / Re: Let's hack Nspire OS 2.1!
« on: July 23, 2010, 01:20:00 am »
Wait, have we located where the protection is?

@qazz42: Protection? I'm not looking for that! :) The TI Nspire hackers right now are hunting for exploits, especially in the upgrade/downgrade area. I think right now they're foraging around in the diagnostic part of the TI Nspire.
(By the way, if you have one, DO NOT PRESS that "diagnostic key" where they ask you to install another image. Critor wants some of those images, so don't delete! :) )

Protection in what? Right now we're trying to discover the .tns format, which is probably compressed in a proprietary manner as far as we know.
If you mean "how it works," then that's what we're doing
(Well, what they are doing ;))

@calcdude84se: Correcto! :) That's exactly what we're trying to do. Why "we're"? Because:
1) The real hackers are doing some crazy stuff now with the Nspire (you might have seen it on this forum regarding diagnostics and such), and I'm just interested in poking around some code. :)
2) I'm just doing this out of curiosity and determination against TI. I unfortunately don't possess that much skill as critor and some of the other Nspire hackers out there have! Heck, I don't even have a Nspire to hack with! :(
3) I haven't learned high level math yet. (I will, don't worry!) But all this cracking and such does require some serious math to understand how (RSA) primes are factored.
4) Everyone's involved, not just me. I know there's other threads around here discussing ways as well, and you guys help me too! It's not only one, it's everyone! ;)

i am clueless about alot of this but out of reading i have been inspired.

If we need to rent a server from amazon or where ever i will be willing to donate some money (eg.25-50 $)
@happybobjr: You should be. Everyone should. It seems dismal (1028 bits IS nothing small), but I'd help crack it whether I win or lose. I rather lose trying then giving up.

Save that for later. For now, you should look around in that long post for Lionel's post with a C++ source to do cracking. That's the best way for now. What OS do you have? I'll try compiling it for you if needed. I will (after I finish a personal, not-so-legal-unrelated-to-TI programming project) build a simple GUI for the cracker. At the same time, a thread (http://ourl.ca/6418/104329;topicseen#new) is currently discussing ways to do the prime factorization faster (basically, the way to crack RSA is to factor a large number into 2 big primes). If that goes through, you can then use your money to rent some Amazon servers to assist with calculations and such with the improved cracking formula.

Honestly, I don't think a server is necessary right now.

@graphmastur: Not an OS. Heck, it's way too small to be an OS. I've never seen an OS that is 0.86 KBs! ;)

This is a TNS file, which is a TI-Nspire Document file.
Now, if I asked to post a TNO file, which is a TI-Nspire OS, that's illegal. (Obviously I would not do that. :) I have other sources...)

EDIT: Yikes! You guys are snappy posters! :-o

Oh, yeah, didn't pay much attention to the size.  Yeah, just making sure, and not enough paying attention.  lol, sorry.

@graphmastur: Yup, no direct need for one unless you already own one, in which you can run the aforementioned program on it.
And don't worry about it. I know you were just being cautious. :) I too am kinda confused about the extensions and such.

=============================
Some updates...

A quick analysis from 7zip shows/confirms the stuff we already know:
(below paths are censored to prevent TI from intruding, since stuff in this particular directory is public,
and with proper knowledge they can get in...)
Code: [Select]
arthur@arthur-PC:/media/WD/.../.../.../.../.../.../$ 7z l -slt *.zip

7-Zip 9.04 beta  Copyright (c) 1999-2009 Igor Pavlov  2009-05-30
p7zip Version 9.04 (locale=en_US.utf8,Utf16=on,HugeFiles=on,1 CPU)

Listing archive: 2.0test.zip

----
Path = 2.0test.zip
Type = Zip

----------
Path = Document.xml
Folder = -
Size = 611
Packed Size = 309
Modified = 2010-07-22 20:21:02
Created =
Accessed =
Attributes = ....A
Encrypted = -
Comment =
CRC = 46CCE168
Method = 13
Host OS = FAT

Path = Problem1.xml
Folder = -
Size = 642
Packed Size = 347
Modified = 2010-07-22 20:21:02
Created =
Accessed =
Attributes = ....A
Encrypted = -
Comment =
CRC = 2F8F91DC
Method = 13
Host OS = FAT

Compression is something very hard to analyze, but my hope is that I'm able to find something, especially if
TI's Nspire links with ZLIB for compression.

So, I've decided to compile ZLIB myself and see what they have in store:

Code: [Select]
arthur@arthur-PC:/media/WD/munchmunchnopeeking/zlib-1.2.5$ ~/example
zlib version 1.2.5 = 0x1250, compile flags = 0x55
uncompress(): hello, hello!
gzread(): hello, hello!
gzgets() after gzseek:  hello!
inflate(): hello, hello!
large_inflate(): OK
after inflateSync(): hello, hello!
inflate with dictionary: hello, hello!

Interesting, eh?
Anyway, what I've done so far:
 - Made reference compressions for a text file, with inside text Nspire text
   List: reftext.7z  reftext.bz2  reftext.gz  reftext.txt
7z = 7zip
bz2 = bunzip
gz = gunzip
txt = original

 - Opened them all up with ghex2 for some bare analysis

That's all! Does anyone have any suggestions for how I should proceed?

803
Other Calculators / Re: Let's hack Nspire OS 2.1!
« on: July 22, 2010, 08:32:56 pm »
@graphmastur: Not an OS. Heck, it's way too small to be an OS. I've never seen an OS that is 0.86 KBs! ;)

This is a TNS file, which is a TI-Nspire Document file.
Now, if I asked to post a TNO file, which is a TI-Nspire OS, that's illegal. (Obviously I would not do that. :) I have other sources...)

EDIT: Yikes! You guys are snappy posters! :-o

804
Other Calculators / Re: Let's hack Nspire OS 2.1!
« on: July 22, 2010, 08:09:44 pm »
Does anyone has Nspire OS 2.1 or OS 2.0 installed?
If so, could you please attach a TNS file in a reply to this topic?

Make sure that your TNS file has a text document inside it (or whatever it's called). Type something random inside it.
Then tell me what string you placed in the text document/note.

Thanks in advance! :)

805
Other Calculators / Re: Let's hack Nspire OS 2.1!
« on: July 22, 2010, 02:59:16 pm »

I know if I rename the file to .zip, rar, 7z, tar.gz or tar, it says it's not a valid archive, so we can't do like with tno files, it seems. But I remember for the TI-73, 82, 85 and 92, you had to send an hacked RAM backup file to the calc to be able to run ASM on them.


IIRC the renaming problem arose because TI used a proprietary compressing algorithm. I could be wrong, though

You are very correct. The Hackspire wiki discusses about that. Apparently there IS something to hide... :)
(See this: http://hackspire.unsads.com/wiki/index.php/TNS_File_Format)

806
Other Calculators / Re: Let's hack Nspire OS 2.1!
« on: July 22, 2010, 10:31:00 am »
@Lionel Debroux: Oh ok. I'll be running it.... and at the same time, attempting to find exploits too.

807
Other Calculators / Re: Let's hack Nspire OS 2.1!
« on: July 22, 2010, 12:47:00 am »
@Lionel Debroux: Yikes. That's pretty big! :-o
But then again... wouldn't the likeliness that we would have to hit all the combinations be low?
Anyway, I've built GMP again (5.x version) for the compiler optimizations, and then compiled your app and executed it. :)
As you've said, it's all about chance.
Could you possibly code it so that if I hit CTRL-C (or hit a key to quit the program), it saves the key?
(I might be very much wrong - I think it's really random/dependent on the time, right?)

And it's unfortunate that you are that busy! I think critor was the guy I was thinking about that is a math professor...?

808
Other Calculators / Re: Let's hack Nspire OS 2.1!
« on: July 21, 2010, 09:48:51 am »
@Lionel Debroux: Ahh, I see. Looks like you are part of the few who can't do much this summer! :(
Are you a math teacher by any chance? (I've heard that some people here are math teachers... which could explain why they are busy)

The CLI program might be OK to implement, but I'm not really familiar with the code. I'll see if I can write something. :)

Anyway, back on topic...

Is there any Nspire emulator that works on Linux and is compatible with the latest OS?
I've tried numerous times to get the emulator (windows, latest) to work, but it's pretty buggy.

809
Other Calculators / Re: Let's hack Nspire OS 2.1!
« on: July 21, 2010, 12:08:26 am »
@graphmastur: The only way around it is releasing a new line of calculators. You can't just change the keys overnight and expect them to work on all the Nspire calcs.

I'm just suggesting ideas. I'm not the person who does this kind of stuff. I've started some preliminary prime number analysis, but otherwise, nothing much at all. Monsieur Debroux might be able to do it, but he, like you, is unwilling to. Just another random idea: rent Amazon/Sun Microsystems servers, and use that. :) (Of course, it has to be donation funded. Sun Microsystems does give free usage for some projects, but I doubt cracking RSA keys is one of them...)

(Sigh....)
It's actually quite interesting really. RSA cracking is basically finding 2 prime numbers that multiply each other to get a final number (which I think is the public key).

It's basically finding 2 numbers that multiply each other to give the final key.
It's kinda sad really that mathematics is the thing that's preventing all of this... :(

To anyone out there:
1) Does the TNS format still need cracking?
2) Which key on the Hackspire wiki do we need?

810
Other Calculators / Re: Let's hack Nspire OS 2.1!
« on: July 20, 2010, 10:58:32 pm »
From what I've read, the calc does get a little upset if you send it a ZIP file instead of it's special compression format.
I don't know about software side though. (I played around with a friend's Nspire and unlocked its true potential with Ndless. He loved it. ;) )

Quite frankly, I would need a TI Nspire to really do some hacking, but I don't have one, and I don't think I'm going to beg for one here... :P

It's possible that a hacked TNS could open exploits for the calc.
The TNS contains XML files. The XML files are parsed by expat. (Version 1.95.8 for reference)

However.... expat doesn't really (at least not mentioned on their page) have any security issues.
A recent one is something to make it go loopity loop (infinite loop, aka DoS attack), which doesn't really seem helpful. :P
(Maybe hilarious to watch the Nspire freeze?)

Pages: 1 ... 52 53 [54] 55