[Dev] RSA SMS - Android Software Development

My colleague and I are writing a program to encrypt SMS using the RSA protocol. The program will be available to the XDA Community and is nearing completion (deadline in one week). The UI front-end uses WebView, and the RSA back-end uses Python. Regardless.
Our problem comes in the form of communicating the keys. The keys will be sent rarely, but are ~8KB large. A peer-to-peer protocol would be ideal, setting up a server (externally) is impractical, and MMS is not built in to Python. Even a method to associate a phone to its specific network address would be helpful. If anybody has any ideas, please post below.
All contributions will be recognized through comments in the code! =)
Thank you in advance.

Related

ConnMgrEstablishConnection Linking Error

I would appretiate if any one has any input on this subject.
I'm developing an application that will run on an Orange M1000 runnign Windows Mobile 2003, i'm using EVC++ 4.0 as my development environment.
The application needs to upload GPS data via the GPRS connection to a webserver. I'm under the impression the best approach to accomplishing this is by use of the Connection Api. However whenever i try compiling examples that use the connection api functions i.e.
ConnMgrEstablishConnection or ConnMgrEstablishConnectionSync I am always met with a linker error which states it is an unresolved external.
I've taken the code directly from the MSDN example with the inclusion of all the header files they suggest, but i still get these errors during linking, does anyone have any idea what-so-ever what may be causing this?
Thank you in advance
Resolved: I had to link cellcore.lib to the project

Android SQL Client

Hi All,
Does anyone know of a SQL client for Android? Just something for running basic queries when I need to check on a system and can't be arsed waiting for a computer to boot up. The databases I use are MS SQL Server.
I've searched about and can't find anything. I've also had a look at the dev docs for Android and it looks like it should be straight forward using the java.sql class but unfortunately Java isn't in my skill set at the moment and the day job & life in general doesn't leave me with much time to learn it.
If there isn't a program does anyone have any plans to write one ;-)
Cheers
Keith
Anyone ???
It'd be pretty darn insecure to open up your databases to use a remote client like that, why not just use something like phpmyadmin for it? It runs fine in the android browser and theres tons of alternatives that probably have iphone themes that would work great. Alternatively you could get debian set up and grab one of the hundreds of apps to do it in the repository
I need this as well. I'm constantly on SQL Enterprise Manager on my PC and when mobile, I have to teamviewer to my desktop and run queries there, which is such a torture.
I've bought RemoteDB, which I can't seem to get to work properly, I can't switch databases and the connection registry is very confusing.
Anybody?!
Also interested
I'm also interested in this topic.
As far as opening your db's up to the internet, that's a bogus argument. Anyone remotely managing enterprise databases will be using a vpn tunnel, and not the open web.
Having an Android app to connect to Microsoft SQL and Oracle would be extremely helpful. I've been trying to figure out how to mod Oracle's SQLDeveloper to do just that but without any success so far.
aSQL - Remote Control, new launch
Remote Control Client for Microsoft SQL Server 2005/2008/2008R2/2012.
aSQL - Remote Control Lite is a powerful Microsoft SQL Server client providing Access to your server in your Pocket. Access all of your databases, Jobs and Processes as well from your mobile device.Simple and Fast application providing advanced features.
aSQL - Remote Control Lite Provide features like:
- Providing connectivity to different servers on your Network.
- Ability to store Server Information for future use.
- Job START/STOP only a click away.
- Kill any running Processes From your mobile device.
- View Databases details - View File size.
Google Play Store link -
"market://details?id=com.sqlforce.aSQL"
SQL Client
Hi Guys
I looked for something like this for a while as well, and couldn't find anything that did what I wanted, so I made one myself
Key features I wanted are the following
Be able to connect directly to a db server. I used the jdts jdbc driver for Java to get this right
Be able to connect to any SQL Server db. I'll add support for Postgres and MySQL if this gains any popularity
List of all databases on the server (excluding system dbs) and allow you to quickly switch between them
List tables in the currently selected db, and generate Select statements for them
List stored procedures in the currently selected db, and pull the code for them so you can change it
Use a tabbed interface for the different sql queries, to allow you to run many queries at once
This is all done and works really well. Large queries take longer to run than they would on a pc, but they run nonetheless.
Let me know what you think, and feel free to suggest features. If enough people like it and use it, I'll bite the bullet and buy the developer so I can publish it on the Play store
I hope you enjoy it
ps. The installer is signed with the standard testing key, so you will need to go into your settings and allow applications from unknown sources
pps. I ask for internet access to get access to the network sockets, but dont actually connect to the internet.
danegoodwin -
I've downloaded it and played with it a bit - looks good. One feature I'd suggest off the top is storing the connection info. It's a pain having to enter the server address and username each time.
If you are still looking for a SQL client I had written one as well.
It should cover most of the popular databases and works well with tablets and phones.
SQLTool Pro
https://play.google.com/store/apps/details?id=com.nraboy.sqltool
I'm also open to suggestions and questions if anyone decides to give it a try.
nraboy said:
If you are still looking for a SQL client I had written one as well.
It should cover most of the popular databases and works well with tablets and phones.
SQLTool Pro
https://play.google.com/store/apps/details?id=com.nraboy.sqltool
I'm also open to suggestions and questions if anyone decides to give it a try.
Click to expand...
Click to collapse
so, this one does BOTH MySQL and MS SQL, and, your other one *just* MySQL ?
thanks, anyone
abbots said:
so, this one does BOTH MySQL and MS SQL, and, your other one *just* MySQL ?
thanks, anyone
Click to expand...
Click to collapse
Correct. The pro version will handle MySQL, MS SQL, PostgreSQL, Sybase, and Oracle up to version 10.1.
The MySQL version is strictly MySQL.
nraboy said:
Correct. The pro version will handle MySQL, MS SQL, PostgreSQL, Sybase, and Oracle up to version 10.1.
The MySQL version is strictly MySQL.
Click to expand...
Click to collapse
thanks for reply (and for nice app!)
nice, looks good... even better, seems to work well....connected to remote MySQL OK
suggestion: please auto-suggest correct ports for relevant SQLs
so, editing can only be done via queries ? (time to learn SQL syntax..?)
next, I'll try connecting to MS SQL, whilst I know a tiny bit about MySQL, I know nothing about MS, might be asking for help...
Nic,
need some help, if you can:
having issues with MS SQL, MS SQL is on a cloud server, for all I know, port could be blocked..
I've setup definition with port 1433, get 'failed to connect'
how to t/s outside of the app ?
should "telnet host 1433 " work ?
I'm getting
# telnet mssql2008.xx.yy 1433
Trying 202.111.22.33...
telnet: connect to address 202.111.22.33: Connection timed out
what else can I try ?
thanks for any pointers!
abbots said:
thanks for reply (and for nice app!)
nice, looks good... even better, seems to work well....connected to remote MySQL OK
suggestion: please auto-suggest correct ports for relevant SQLs
so, editing can only be done via queries ? (time to learn SQL syntax..?)
next, I'll try connecting to MS SQL, whilst I know a tiny bit about MySQL, I know nothing about MS, might be asking for help...
Nic,
need some help, if you can:
having issues with MS SQL, MS SQL is on a cloud server, for all I know, port could be blocked..
I've setup definition with port 1433, get 'failed to connect'
how to t/s outside of the app ?
should "telnet host 1433 " work ?
I'm getting
# telnet mssql2008.xx.yy 1433
Trying 202.111.22.33...
telnet: connect to address 202.111.22.33: Connection timed out
what else can I try ?
thanks for any pointers!
Click to expand...
Click to collapse
Hinting a default port is a good idea. I will see about adding in an upcoming release.
Yes right now anything beyond a simple select or delete must be done with a custom query. My goal is to make it more like the desktop editors, but since I am the only developer it might take a while. But I am not saying it won't happen.
If telnet is failing to connect then there is a firewall rule blocking your IP. Three things could fix this.
1. Add your IP to the database allow list (talk to the DBA)
2. If you can connect to the network the DB is on via VPN then you should. The db might be restricted to local IP
3. Use the SSH features of SQLTool to connect to a server on the databases allow list
You were smart to try the telnet. I would have done the same thing.
Feel free to contact me here or through the tools site. I'm happy to help
nraboy said:
You were smart to try the telnet. I would have done the same thing.
Click to expand...
Click to collapse
ahem, not that smart.....
forgot to specify sql type...... ooops
suggestion: don't allow save unless all req. stuff filled in...
OK, I seem to be in.
can I dump/backup with this app ?
thanks.
decent app, well done, wish you success in further development, if I can help in any way, happy to try
now I need to figure out how to dump this MS SQL into my Linux machine
abbots said:
ahem, not that smart.....
forgot to specify sql type...... ooops
suggestion: don't allow save unless all req. stuff filled in...
OK, I seem to be in.
can I dump/backup with this app ?
thanks.
decent app, well done, wish you success in further development, if I can help in any way, happy to try
Click to expand...
Click to collapse
Nice catch on the SQL Type. I will work to correct that.
For dump / backup are you referring to data or structure or both? Right now I have exporting DDL on my things to do list, but if you're referring to something else I'd like to hear it.
Thanks for the compliments on my app. I definitely want to hear more suggestions if you have them. Also please don't forget to rate well when you get a chance

[SOLVED][Q] Android Login Application

Hello everyone !
I want to create an android app, that should take input username and password and then login to a website. Basically any website. Well, I am trying to create an app for a website with login page in .aspx form.
I googled regarding this but was unable to find some effective solution. Almost all websites I searched contained only login page design and a simple java code which equals username and password and then makes a toast text. I need some info regarding how to login into that particular page with active session.
Let login page be: 127.0.0.1/login.aspx
I am not a beginner and have developed few apps. This project is very important for me. So please help me regarding this.
Anykind of help is highly appreciated. Please do help.
Thanks
Come On Guys , Show some effort
Making apps "for website" in my opinion could be easily sorted turning the app "server side"... read my comment at this post.
By following my advice you have several advantages:
Users don't need to update their app when new version comes out
Harder to crack (unless they hack your server...)
Compatibility with different platforms/os
No disk-space needed on user device
If you really really need java code for that (as it's a school project requiring java or something ...) have you considered using raw sockets (probably not the best idea, but you asked for "Any kind of help" so... ) ? You said you have experience (I don't with java so can't help with the code, but I used similar technique in python, php, etc, ...) so it shouldn't be hard to find a simple code snippet for handling raw packet sending... Use your PC and fire up Wireshark or any other sniffer and debug the communication between client-server. Look at the header informations and data sent, and it will be easy to replicate those request-response via raw socket.

Open source distributed social network

Hi!
Anyone else bothered by sharing their personal info on social network to the third party? I had thought about developing open source distributed social network app based on https server running on android phones. Each member should have android device as a server of his/her profile.
0) - https protocol could provide possibility to connect to your social network using web browser.
1) - One may be able to deal with extensive upload and download or lost connection issues by allowing distributed profile updates sharing:
I suggest following scenario:
D updates profile. B, C are acknowledged friends of D. B is on quality link - good connectivity to internet and sends broadcast I am sitting on good connection. B downloads update of D. D looses connection. C downloads and update of D from B.
2) - Re-acknowledging of friend ship should be day-wise of few hour-wise. So passwords should change during time using some hashing or whatever.
what do you think?
see ya
mrWax said:
Hi!
Anyone else bothered by sharing their personal info on social network to the third party? I had thought about developing open source distributed social network app based on https server running on android phones. Each member should have android device as a server of his/her profile.
0) - https protocol could provide possibility to connect to your social network using web browser.
1) - One may be able to deal with extensive upload and download or lost connection issues by allowing distributed profile updates sharing:
I suggest following scenario:
D updates profile. B, C are acknowledged friends of D. B is on quality link - good connectivity to internet and sends broadcast I am sitting on good connection. B downloads update of D. D looses connection. C downloads and update of D from B.
2) - Re-acknowledging of friend ship should be day-wise of few hour-wise. So passwords should change during time using some hashing or whatever.
what do you think?
see ya
Click to expand...
Click to collapse
I implemented such a prototype some year ago, although not for mobile clients. You'll have a few issues you'll need to address. You have to use PKI to ensure the identity of the sender in the distributed environment, and you'll have to implement a message routing protocol distributing the messages among the peers. Have a look at my prototype and feel free to steal any ideas: http://whisper.ping.se
Thanks!
Maybe for simplicity one could just copy WIFI WPA2 protocols where router would be one member and internet connection would be connection to the members personal data.
mrWax said:
Maybe for simplicity one could just copy WIFI WPA2 protocols where router would be one member and internet connection would be connection to the members personal data.
Click to expand...
Click to collapse
Huh? I'm sorry, but I can't make any sense of this at all. To achieve what..? I'm missing something here, I guess.
Android is shipped with the BouncyCastle crypto libraries. This is what you'll use to sign the messages with each users private keys to ensure the identity of the author of each message. If you want to encrypt, you'll use this library as well. Since you are working in a distributed store and forward environment, you can not rely on link encryption (e.g. https, wpa2 etc) but have to use point-to-point encryption instead, protecting the message itself instead of the transport channel.
Radio broadcasting resembles similarities to the internet "broadcasting" or: social network resembles similarities to the "person-his friends" virtual private network.
Since it is said that it is hard not to make security flaws when constructing new protocols. i think that adopting whole existing expert made protocol is best solution.
Whole wifi wpa2 protocols could be packed inside ordinary encrypted channel. Where the personal info provider of specific person from which his friends would want to download info - would take place of a "wifi Access Point " in this.

[Q] need help ,developing group messaging over WLAN

I am supposed to develop a group messaging app (IM client) using WLAN ,its a term project.This app is supposed to list all the available users that are connected over the wlan and provide the user with the options ,to create a group ,send group messages or send messages individually over the wlan.I have had experience of developing android apps in the past but none of them have ever been network based.
I need to know :
1.what Internet protocols will be used .(sip? ,voip?) for DNS etc ,yeah i have below meager networking knowledge.
2.what areas do i need to research any links to resources will be quite helpfull .
3.any open source app that offers the same functionality
4.do i need to set up a server aswell ?
I would be really thankfull for your advice on this .
Take a look at XMPP which is an extendable and open source messaging protocol.
DNS is just used to convert names to numbers, so you'd give your server a name and create a DNS A record, then the clients would use that name to locate the server. XMPP works over TCP/IP which is useful as it's implemented in every operating system I'm aware of. There are also XMPP clients (which is a protocol that works on top of TCP/IP) for all platforms out there as well.
Check wikipedia for XMPP to give you background information, then look at something like openfire as a server implementation, it's pretty simple to setup and has a web based configuration.
Configure Microsoft Communicator

Categories

Resources