Foro de elhacker.net

Comunicaciones => Hacking Mobile => Mensaje iniciado por: caballeroantonio en 6 Diciembre 2005, 03:47 am



Título: hacer un programa bluetooth
Publicado por: caballeroantonio en 6 Diciembre 2005, 03:47 am
hola, yo se de electronica, pero no mucho de programacion.

quisiera hacer un programa en visual basic, que pueda mandar un archivo de publicidad.

pero no encuentro herramientas para bluetooth que pueda usar en visual basic.

entonces hice algunas pruebas con labview, y labview ya incluye herramientas para conectarse con dispositivos bluetooth.

con labview, logro ver los dispositivos que hay enrededor, tambien ver que servicios ofrecen, es decir lo mismo que el programa que en su foro lei que recomiendan "bluesweep", pero hecho por mi.

y funciona perfecto con dispositivos que no necesitan paring.
en estos recibo y envio datos perfectamente.

pero con dispositivos que necesitan "paring", no puedo hacer esto, ya que no encuentro el protocolo de que datos  necesito enviar para establecer el paring.

en bluetooth.org no son muy claros, si alguien sabe agradezco cualquier ayuda.

postdata

sus informaciones sobre bluedebugging usando comandos at es buena, pero ya es obsoleta, creo, ya que en los celulares, bluetooth ya no es una salida estandart, de modo que cuando le envias comandos at, la mayoria no te responde informacion, principalmente los comandos de informacion privada.


Título: Re: hacer un programa bluetooth
Publicado por: SirGraham en 6 Diciembre 2005, 14:01 pm
Hola,

Te comento yo algunas cosas.

LabView no es precisamente "el paradigma de la programacion". Es una herramienta para hacer cositas destinadas a pequeños interfaces con cirtuitos electronicos pero hay se acaba todo. No es la herramienta apropiada para hacer este tipo de cosas.

Desde Visual Basic no tienes tampoco un interfaz clara para el acceso a Bluetooth dado que no parece muy integrado con el Microsoft Platform SDK todavia.

Nosotros que estamos haciendo un sistema para Bluetooth, (que por cierto incluye la opcion que comentas de envio de publicidad) optamos por C++ y por multiplataforma. Es la mejor manera de poder acceder a todos las opciones del Microsoft Platform SDK (XP SP) y lo necesario para hacer lo que comentas....De echo el Bluesweep es lo que hace para usar el SDP de Bluetooth. Usar C++ y el Microsoft Platform SDK.

Desde la libreria de C++ tienes acceso al pila de protocolos de Bluetooth a traves del SDK y el entorno de WinSock (parecido a como lo hace Symbian). Hay puedes hacer toda la funcionalidad de autentificacion sin problemas.

Mas temas:
La salida de comandos AT es totalmente estandard e implementada por la mayoria de los fabricantes que incluyen perfil de Acceso Telefónico a Redes (DUN). Ese no es el problema de esa tecnica.
El tema es poder realizar una autentificacion sin necesitad de PIN. Eso se podia en los antiguos terminales con el Bluebug, pero  no en los nuevos que ya tienen ese problema de seguridad correguido a nivel de S.O.

Saludos,
Sir Graham.


Título: Re: hacer un programa bluetooth
Publicado por: caballeroantonio en 6 Diciembre 2005, 21:00 pm
GRACIAS POR TUS COMENTARIOS SirGraham

UNA ULTIMA AYUDA PARA TERMINAR ESTA LIGA.

NO ENCUENTRO EL NOMBRE EXACTO DEL SDK DE MICROSOFT, PARA DESCARGARLO.

Y PUS POR SI A ALGUIEN DE ESTE FORO SE LE OFRECE, YO TENGO LA LICENCIA DE APPFORGE CROSSFIRE PARA HACER PROGRAMAS PARA SYMBIAN, NO LES PASO EL NUMERO DE SERIE, PORQUE NO LES SERVIRIA YA QUE SE VALIDA CON EL NUMERO DEL PROCESADOR, PERO AL QUE LO NECESITE SI QUERE LE COMPILO SU PROYECTO

YO ME IMAGINO QUE PARA USTEDES APPFORGE ES UNA CHORADA, PERO COMO YO NO SOY TAN BUENO PROGRAMANDO EN C++ ME HA AYUDADO BASTANTE.


Título: Re: hacer un programa bluetooth
Publicado por: SirGraham en 7 Diciembre 2005, 08:53 am
Hola,

Lo que te aconsejaria para para programar (en C++) bluetooth en el "ventanuco" es:

- Microsoft Studio .NET (2003 o 2005)

- Microsoft Platform SDK (Gratuito)
http://www.microsoft.com/downloads/details.aspx?FamilyId=A55B6B43-E24F-4EA3-A93E-40C0EC4F68E5&displaylang=en

- El XP con el SP2 instalado (no es fundamental, pero si muy conveniente).

Armate de paciencia, El "ventanuco" como plataforma no es lo mejor para el uso del Bluetooth. Nosotros hemos tenido mas exito en otras plataformas, Symbian, Pocket PC, smarphones o Linux.

Pues muchas gracias por tu ofrecimiento del AppForge, nosotros por nuestra parte... pues no lo necesitamos.  ;)

Saludos,
Sir Graham.


Título: Re: hacer un programa bluetooth
Publicado por: I am blue en 2 Enero 2006, 18:03 pm
Hola sirgraham!!
Veo que de esto de progrmar para Bluetooth entiendes un rato, asi que aqui va mi pregunta/consulta:

Recientemente he hecho un programa basado en arquitectura documento/vista (usando clases MFC) que hace las veces de punto de acceso Bluetooth, creando una piconet. La cuestion es que lo he hecho usando el visual c++ 6.0.Ahora me acabo de instalar el visual studio .NET 2003, y tras intentar compilar mi programa, el visual ha "actualizado" todo (para generar lo que se conoce como "solucion") y resulta que el programa ya no funciona.Me aparecen errores relacionados con la clase CSockAddr de la ATL, lo cual me sorprende un poco, porque yo en mi programa original no utilice nada de al ATL. Podrias sugerirme como debo de configurar el visual studio .NET 2003 para que las APIs de Bluetooth que vienen en el SDK sigan funcionando???.
Muchas gracias por tu atencion,

I am blue.


Título: Re: hacer un programa bluetooth
Publicado por: SirGraham en 3 Enero 2006, 00:42 am
Hola,

Entiendo que para usar las clases de Bluetooth has usado el API disponible en el nuevo SDK (Microsoft Platform SDK). No entiendo yo tampoco por que al convertirte el nuevo proyecto a 2003 tendria esto que darte problemas.

Desgraciadamente yo solo he probado directamente del 2003 (nosotros no teniamos ningun proyecto en 6.0, salvo en Symbian que usamos un antiguo SDK), me extraña no obstante que te de problemas, mas siendo un acceso a la base de sockets.

¿Estas usando el Microsoft Platform SDK? o lo has echo con unas clases anteriores?

Saludos,
Sir Graham.




Título: Re: hacer un programa bluetooth
Publicado por: I am blue en 3 Enero 2006, 10:25 am
Uso el Microsoft Platform SDK. En realidad lo que he hecho es lo siguiente:
He creado una clase CBlueSocket derivada de CAsyncSocket (de las clases MFC), a la cual le he añadido todas las APIs que aparecen en el SDK (BluetoothFindFirstDevice etc.).Asi tengo una clase de sockets de bluetooth.
La verdad es que estoy un poco desconcertado.
¿Para el visual 2003, como has configurado los directorios de C++?(Me refiero a la opción de configuración que encuentras en "Herramientas" y ahi dentro en "Opciones" y luego en "Proyectos").

Saludos,

I am blue


Título: Re: hacer un programa bluetooth
Publicado por: I am blue en 3 Enero 2006, 11:54 am
OK, ya consegui compilar la aplicación.
Parece ser que hay un "bug" en la ATL 7.1. al usarla con Windows XP.
Para usar CAsyncSocket es necesario incluir el archivo "Afxsock.h" y mira por donde que "afxsock.h" a su vez incluye el archivo "atlsocket.h", archivo donde estan las definiciones de la ATL para los sockets.
Encontrareis  solucion al problema en la siguiente página:
http://support.microsoft.com/default.aspx?scid=kb;en-us;822334

Ahora me salen fallos tipo "Assert" por un tubo, asi que me espera bastante trabajo por delante.

P.S.:Me estoy empezando a arrepentir de haber hecho el programa usando las APIs d bluetooth de Microsoft.Los que esteis apunto de empezar a programar, pensarlo 2 veces, igual merece mas la pena usar Java con el NetBeans.


Título: Re: hacer un programa bluetooth
Publicado por: SirGraham en 3 Enero 2006, 12:37 pm
Hola,

Sip. Nosotros ya tenemos esos directorios configurados.

Lo de Java tampoco te creas que es la panacea...

Saludos,
Sir Graham.


Título: Re: hacer un programa bluetooth
Publicado por: ANR en 23 Noviembre 2006, 17:12 pm
Ya se que estoy recuperando un hilo muy antiguo, pero lo que quiero preguntar viene al caso:

Estoy intentando hacer un  programa en windows para que detecte y envie mensajes a dispositivos bluetooth.

Pero estoy recogiendo informacion y me he hecho un lio a ver si me podeis hechar una mano:

Lo primero es la pila de protocolos, si no me he confundido demasiado hay 2 la widcomm y la de microsoft. En todos los lugares que he leido recomiendan usar la de microsoft o los ejemplos que he podido conseguir dicen que no funcionan con la widcomm.
¿Como instalo la pila de protocolos de microsoft? Segun he leido  solo tendria que insertar el bluetooth en el puerto usb y no meterle el driver que trae (ya que tengo windows xp sp2) pero he provado con varios adaptadores bluetooth y ninguno va asi

¿lo estoy haciendo mal o debo conseguir otro adaptador? en el caso de otro adaptador ¿Cual me recomendais?


Muuuchas gracias


Título: Re: hacer un programa bluetooth
Publicado por: adepa en 24 Enero 2007, 17:30 pm
Hola a tod@s!!

Puede que este sea un hilo demasiado viejo como para obtener respuesta, pero mi pregunta tiene que ver con lo de "hacer un programa Bluetooth".

Vereis, soy nuevo en el desarrollo de aplicaciones con Bluetooth y no se muy bien por donde me da el aire :(

Mi problema ahora mismo es que no se qué SDK tengo que instalarme, me explico: en una de las respuestas de este mismo hilo vi un enlace a una página de Microsoft de donde descargarme el SDK, pero en dicha página dicen que esa es una versión antigua y te dan otras opciones más actualizadas, y ahí es donde tengo el problema xq hay 17 ficheros PSDK-FULL.cab y un PSDK-FULL.exe (el enlace es: http://www.microsoft.com/downloads/details.aspx?FamilyId=484269E2-3B89-47E3-8EB7-1F2BE6D7123A&displaylang=en), y te dicen que te descargues el que más te convenga pero no te dicen en qué se diferencian unos de otros.

Ah! Tengo que programar Bluetooth en Windows, en C++.

Muchas gracias (y siento la chapa) :)


Título: Re: hacer un programa bluetooth
Publicado por: adepa en 29 Enero 2007, 13:03 pm
Por si le sirve de algo a alguien, ya solucioné lo de qué SDK instalarme:

=> Instrucciones para la descompresión de los ficheros de cabecera (descargados desde http://www.microsoft.com/downloads/details.aspx?familyid=484269E2-3B89-47E3-8EB7-1F2BE6D7123A&displaylang=en) y posterior instalación. PASOS a seguir:

1.   Crear un directorio temporal donde guardar los ficheros descargados (con suficiente espacio en disco libre) (por ejemplo: c:\psdktemp)

2.   Descargar todos los ficheros PSDK-FULL.n.cab en el directorio creado para ello. (donde n:1…17)

3.   Descargar en el mismo directorio el fichero PSDK-FULL.exe

4.   Desde la ventana de comandos (Inicio -> Ejecutar -> cmd), nos trasladamos al directorio temporal (por ejemplo: cd c:\psdktemp)

5.   Ejecutar el fichero PSDK-FULL.bat para obtener la extracción completa a partir de los ficheros .cab (por ejemplo: c:\psdktemp> psdk-full c:\psdk).
Esto puede llevar varios minutos.

6.   Ejecutar el fichero Setup.exe para instalar Platform SKD usando SDK Update interface (esto es, ejecutar, desde el explorador de Windows, el fichero Setup.exe que se ha creado en la carpeta c:\psdk).

•   A partir de aquí, leer el contenido del fichero  de ayuda C:\psdk\ReleaseNotes.Htm



Título: Re: hacer un programa bluetooth
Publicado por: verito123 en 23 Julio 2008, 22:53 pm
Buenas Tardes a todos !!!!
Elegi un tema que me intereso para presentarlo como TESIS en la facultad... Tengo un Access Point Bluetooth y me parecio interesante usarlo.
Sin saber mucho del tema, el profesor nos recomendo hacer una programa para la facultad donde los alumnos puedan informarse sobre sus horarios de examenes, horarios de clases, notas de materias etc.
Me pase el ultimo mes leyendo sobre el tema y estoy MUY enredada. Me encantaria que alguien que entienda del tema me guie...Es posible hacer esto??
Por donde empezar??
Muchisimas Gracias
Vero


Título: Re: hacer un programa bluetooth
Publicado por: SirGraham en 24 Julio 2008, 16:09 pm
Hola,

"Access Point Bluetooth" supongo que te refieres al de Bluegiga.

Si es asi, tendras que pedirles a ellos la documentacion. Por tienes dos caminos:

- Hacer como lo dicen ellos.
- y... hacer como lo dicen ellos.

Con Bluegiga no hay mas posibilidades.

Saludos,
Sir Graham.



Título: Re: hacer un programa bluetooth
Publicado por: verito123 en 24 Julio 2008, 22:09 pm

jajaja, ya me di cuenta que no tengo muchas opciones con el bluegiga...
En realidad me gustaria que me guien utilizando otras opciones....

Estuve leyendo el libro Bluetooth Essentials for Programmers y me aclaro algunas dudas, pero todavia no todas.

Mi primera pregunta es , es factible hacer lo que presentamos como tema? Que me recomiendan leer ?

Muchisimas gracias por la respuesta !!!

Saludos,
Vero


Título: Re: hacer un programa bluetooth
Publicado por: SirGraham en 25 Julio 2008, 10:42 am
Hola,

Nosotros (como habras podido comprobar) nos dedicamos profesionalmente a ese tema que comentas. Con esto quiero corroborar que es factible hacer lo que dices.

En tu caso, por la informacion que has puesto, pienso que lo mas importante es ver que informacion mandas al terminal y su compatibilidad.

Tienes dos opciones:

-Solo enviar informacion desde el dispositivo a los telefonos, PDA y ordenadores. Bien en texto, pequeñas paginas WAP o incluso un archivo grafico.

- Enviar y recibir informacion: Realizar una pequeña aplicacion Java que te permita comunicarte con el dispositivo y ademas maquetar y presentar la informacion.

Seguramente me diras que te gusta mas la segunda opcion (que a priori es la que todo el mundo se decanta). Pero esto tiene varias e "importantes" pegas:

- Compatibilidad: no todos los terminales funciona el Java de la misma manera. Las PDA olvidate de ellas (microsoft rulez).
- Tienes que poder hacer un pequeño protocolo de comunicacion en un perfil de bluetooth (esto en bluegiga te va a costar).
- Tienes que lidiar con el API JSR-82 del terminal (el API de bluetooth).

Es lo que hay. Cuidadin al elegir por que lo que parece facil... no lo es tanto.

Lo bueno de los proyectos universitarios a diferencia de la vida real es que tienes bastante margen respecto al funcionamiento: vamos que con que funcione para un par de telefonos es suficiente. Esto en la vida real seria un proyecto fallido.

Saludos,
Sir Graham.



Título: Re: hacer un programa bluetooth
Publicado por: verito123 en 29 Julio 2008, 18:15 pm
Muchisimas Gracias por la respuesta !!
Estuvimos estudiando el caso... y hablando con el profesor nos informo que si o si tenemos que usar el access point ya que lo presentamos en la propuesta...

Nos gustaria analizar la idea de Marketing de Proximidad, necesitamos una aplicacion interesante para presentarlo al tutor... si no es mucho pedir ... nos podrias volver a ayudar con esto?

Muchas Gracias


Título: Re: hacer un programa bluetooth
Publicado por: SirGraham en 30 Julio 2008, 11:14 am
Hola,

Puedo ayudarte siempre que no comprometa los productos de la empresa, claro esta....

¿Que es lo que quieres hacer mas concretamente?

El acces point de bluegiga es nuestra "competencia".... (entre comillas, dado que no es un producto de marketing de proximidad).

Saludos,
Sir Graham.


Título: Re: hacer un programa bluetooth
Publicado por: verito123 en 1 Agosto 2008, 16:41 pm
Nuevamente te molesto sir graham....
A lo que me referi en el mensaje anterior es si me puedes ayudar a definir un proyecto interesante sobre marketing bluetooth, algo interesante...

Si no me puedes ayudar no te sientas comprometido...

Gracias
Veronica


Título: Re: hacer un programa bluetooth
Publicado por: SirGraham en 1 Agosto 2008, 21:05 pm
Hola,

Aplicacion concretas hay muchas. Puedes pasar por nuestra pagina web en donde tienes algunas aplicaciones del sistema XBlue.

Obiamente todas con un fuerte sentido comercial (dado que es un producto comercial): http://www.xblue.es/aplicaciones.html

Ahora bien dependera que es lo que quieres hacer y cuanto quieres complicarte la vida. La opcion que me comentaste en su momento es perfectamente factible con el AP de Bluegiga siempre y cuando jueges con sus positibilidades. Si quieres hacer algo diferente igual empezaras a tener problemas....

Saludos,
Sir Graham.


Título: Re: hacer un programa bluetooth
Publicado por: verito123 en 14 Agosto 2008, 17:07 pm
Sir Graham, en caso que decidamos NO utilizar el access server de bluegiga...que nos recomendarias??

Gracias


Título: Re: hacer un programa bluetooth
Publicado por: SirGraham en 14 Agosto 2008, 20:57 pm
Hola,

Yo creo, por nuestra experiencia, que hacer un simple dispacher de mensajes de Bluetooth no es ya atractivo.

Yo creo que hacer algo interactivo seria mas interesante. Una aplicacion a instalar en el dispositivo (PDA o telefono) que realize algun tipo de interactividad con el punto de acceso.

Podeis hacer esto desde una plataforma de PC y la parte de movilidad en Java. Si luego quereis hacer que sea mas comercial, podriamos ver como integrarlo con el software de punto de acceso del XBlue (XBluePoint) (que tambien puede funcionar en Windows y en Linux).

Es una idea.

Saludos,
Sir Graham.





Título: Re: hacer un programa bluetooth
Publicado por: Proxy Lainux en 3 Marzo 2009, 04:12 am
hola

Estoy tratando de crear un programa en linux para que se conecte mediante bluetooth mi computadora con mi celular, pero aluien sabe que tengo que hacer para aceptar la contraseña

lo que pasa es que en programas que he usado tengo que colocar la contraseña en el programa de la computadora primero y despues me pide la contraseña el celular y al colocar la misma contraseña que coloke en en programa el celular lo acepta y puedo ver los archivos...

les dejo una imagen de lo que quiero decir

(http://media.ymipollo.com/ua/80/2008/06/Passkey.JPG)

pero no se como programar en C esa parte de la contraseña, alguien sabe que hace y que se necesite saber para que acepte la contraseña y pueda tener acceso a los archivos de mi celular?

salu2  ;D


Título: Re: hacer un programa bluetooth
Publicado por: SirGraham en 3 Marzo 2009, 07:57 am
Hola,

Depende del perfil que estes usando en Bluetooth para realizar la conexion.

Algunos estan autentificados: Pide PIN (como el OBEX FTP) y otros solo necesitan confirmacion (ejem. OBEX PUSH).

¿Cual usas tu?

Saludos,
Sir Graham.


Título: Re: hacer un programa bluetooth
Publicado por: Proxy Lainux en 3 Marzo 2009, 15:53 pm
hola sirGraham

pues mi celular creo que pide PIN, porke como mencione anteriormente tengo que colocar una contraseña en la compu y despues lo tengo que poner en mi celular, despues el celular me dice, "verificando PIN", lo acepta y lo guarda y se monta el celular en el escritorio...

antes usaba ubuntu ultimate y ya estaba todo instalado, y ahorita puse la version live del mismo ubuntu y al verificar no estaba instalado ni obexftp ni obexpush, así que no se cual usaba... pero creo que es como Obexftp que pide pin

pero como lo podria programar?, ahorita lo que llevo es que el bluetooth de la compu me encuentre el bluetooth de mi celular y mediante socket se intente vincular, pero lo del pin no tengo idea de que hacer, y al buscar en google solo me aparece "hackeo por bluetooth", y no encuentro algo relacionado con lo que estoy buscando, espero me puedas ayudar

otra pregunta, yo por lo general utilizo codeblocks y lei que es mejor hacer un programa de bluetooth con VC++.net y SDK, pero casi no me gusta visual studio y no encuentro el que tenia, así que me gustaria saber si se puede hacer un programa de bluetooth con codeblocks

salu2  ;D


Título: Re: hacer un programa bluetooth
Publicado por: SirGraham en 3 Marzo 2009, 18:04 pm
Hola,

Haber por partes:

Citar
pues mi celular creo que pide PIN, porke como mencione anteriormente tengo que colocar una contraseña en la compu y despues lo tengo que poner en mi celular, despues el celular me dice, "verificando PIN", lo acepta y lo guarda y se monta el celular en el escritorio...

Si estas realizando una vinculacion eso es lo normal. Si haces una conexion por programa depende de a que perfil de Bluetooth te conectes. Normalmente los perfiles de OBEX FTP estan autentificados (pide PIN) y los de OBEX PUSH solo necesitan confirmacion.

Citar
pero como lo podria programar?, ahorita lo que llevo es que el bluetooth de la compu me encuentre el bluetooth de mi celular y mediante socket se intente vincular, pero lo del pin no tengo idea de que hacer, y al buscar en google solo me aparece "hackeo por bluetooth", y no encuentro algo relacionado con lo que estoy buscando, espero me puedas ayudar

La peticion de PIN proviene de que el perfil de bluetooth "remoto" (supongo que el del movil en este caso) al que te conectas tiene asignada autentificacion (cosa normal).

digamos que es el movil el que pide el PIN. Eso DEBE ser así por la seguridad bluetooth: Tienes informacion en este foro de como funciona el sistema de autentificacion de Bluetooth. Te invito a que la leeas y la estudies para que entiendas mejor lo que quiero decir.

Si no fuera así, cualquiera podria, simplemente con hacer una aplicacion para PC extraer o introducir ficheros por bluetooth en tu movil. DEBE existir un sistema de seguridad para evitar eso. En Bluetooth se realiza con una gestion de intercambio de PINs. Tu no puedes decirle al movil que PIN es "por programa" y de forma remota, por que la aplicacion "remota" del stack de bluetooth de tu motorola, en este caso, no te va dejar "obiamente". Es que si no no abria seguridad.

Ya se lo que me vas a decir:
"yo le pongo un pin que solo conozco yo y se lo envio al celular. Asi solo mi aplicacion se conecta".

Ya pero es que el esquema de autentificacion de cualquier sistema de radio: Wi-Fi (wep/wap), GSM (A3A8), o Bluetooth (E22) requiere que ninguna clave se mande por radio. Si no no habria seguridad. Por lo que la gestions de PINs es mas complicada (se hacen mas cosas) que las que crees tu ver ...

Si tu quieres eliminar este proceso, tendrias que instalar una aplicacion (Java J2ME, Symbian, Windows Mobile, etc...) en el movil, que creara un nuevo perfil no autentificado y conectarte a ese perfil desde el PC. Con ello la seguridad no se ve vulnerada, por que usuario a instalado una nueva aplicacion y el perfil dependera de la misma... el usario sabra por que la instalado.

Citar
otra pregunta, yo por lo general utilizo codeblocks y lei que es mejor hacer un programa de bluetooth con VC++.net y SDK, pero casi no me gusta visual studio y no encuentro el que tenia, así que me gustaria saber si se puede hacer un programa de bluetooth con codeblocks

El problema no esta el IDE (el entorno) de programacion que uses. El tema es si desde code::blocks y el compilador de C++ que tenga tu puedes cargar las librerias staticas del SDK de Microsoft. Si no es así,  no podras hacer nada con el stack de bluetooth de microsoft y por consiguiente con bluetooth.

Saludos,
Sir Graham.



Título: Re: hacer un programa bluetooth
Publicado por: Proxy Lainux en 3 Marzo 2009, 19:12 pm
hola de nuevo

mira estaba leyendo este articulo que kreo es de gospel... dejo el link

http://www.seguridadmobile.com/bluetooth/seguridad-bluetooth/elementos-de-seguridad.html#Autenticacion

y logro vincular mi pc con el bluetooth de mi movil mediante socket pero no logro emparejarlo por el PIN, y en este link encontre que...cada par de dispositivos emplea una clave de enlace secreta común de 128 bits

pero que debo aprender para programar eso, en el mismo link dice que usan algoritmos E21 y E22... voy a buscar algo de eso, haber que encuentro

y haber si me pueden decir que necesitaria estudiar para hacerlo, ya que el programa lo estoy haciendo en linux, en C y basandome en Bluez


Título: Re: hacer un programa bluetooth
Publicado por: SirGraham en 3 Marzo 2009, 20:01 pm
Hola,

Conozco la web de Gospel, que es ademas moderador de este foro.  El otro dia estuvimos hablando de otros temas con el...

Vamos haber... por que creo que no me explicado bien.

El sistema de seguridad de Bluetooth "es una cosa seria". Esta muy bien echo. Puede haber problemas de seguridad en algunos terminales, pero siempre por culpa de la implementacion de los fabricantes de terminales del stack de bluetooth, no del propio protocolo de bluetooth en si.

Citar
y logro vincular mi pc con el bluetooth de mi movil mediante socket pero no logro emparejarlo por el PIN, y en este link encontre que...cada par de dispositivos emplea una clave de enlace secreta común de 128 bits

pero que debo aprender para programar eso, en el mismo link dice que usan algoritmos E21 y E22... voy a buscar algo de eso, haber que encuentro

No es un tema secreto. Esta perfectamente publicado y documentado. Lo tienes en la propia web de desarrollo de Bluetooth y en mensajes de este mismo foro.

Otra cosa es que encuentres un mecanismo para saltarselo:
No valen cosas como estar snifando los paquetes de bluetooth en el momento de emparejamiento de terceros y obtener asi el PIN (eso no es valido en una situacion real o en caso que propones). Ademas esa tecnica ya esta mas que estudiada y  probada en este foro con todas sus posibilidades.

Para hacer lo que quieres, en sintesis tendrias que:
"Simplemente" obtener, previa a la comunicacion por socket  y en caso de que exista (por que no necesariamente se tiene que haberse producido previamente), TODA la configuracion guardada de una vinculacion previa realizada en ese  terminal remoto. Esto es: toda la informacion de una viculacion que tenga, claro esta todos los permisos. Todo eso (repito) de forma REMOTA.

Esta configuracion se compone (basicamente) de la clave de 128 bits que comentabas antes (creada pseudo aletoriamente y en base a los PINs) + MAC del dispositivo que ha generado esa vinculado previa. Una vez obtenida esa informacion se puede añadir a la lista de vinculacion del stack que estes usando (sera diferente si es BlueZ o Microsoft) y ademas cambiar tu propia MAC por la obtenida de esa configuracion.

Así al realizar la conexion no te pediria PIN, dado que te harias pasar por otro terminal que ha sido vinculado previamente con todos los permisos.

Claro, que esto es mucho mas facil decirlo que hacerlo...  :silbar:

Si tu crees que puedes encontrar una via para conseguir todo eso, adelante... aqui nos encontraras por si necesitas una ayuda en algo.

Yo llevo bastantes años en el tema de bluetooth (como otra mucha gente) y no se me ocurre como hacerlo .. pero oye mira... igual a ti se te ocurre una idea milagrosa para ello....
 ;D

Saludos,
Sir Graham.



Título: Re: hacer un programa bluetooth
Publicado por: Proxy Lainux en 3 Marzo 2009, 20:32 pm
ok.. gracias ya encontre mas cosas... y creo que voy a leer un poco mas sobre esto

lo que pasa es que hace tiempo compre un usb de bluetooth para mi compu porke rompi el cable de usb para conectar mi movil con la computadora, pero el usb de bluetooth venia con un programa de prueba para poder revisar los archivos que tengo en mi celular, como fotos y videos

y cuando lo instale se enlazo el usb con mi telefono y en la compu coloque una contraseña como "2233" y despues la escribi en el celular y la acepto y en el programa me aparecio una ventana con las carpetas de fotos,videos y musica, y ahorita kise programar el mio pero solo logro ubicar el bluetooth de mi celular y conectarme, pero la verdad no tengo idea de como emparejar los dos dispositivos para depues poder ver mis archivos...

yo al principio pensaba que el movil enviaba una contraseña cifrada a la compu, el programa de la compu lo desencriptaba y lo comparaba con el que ya habia alli y si era igual mandaba una señal de aceptacion a movil, el movil tambien lo aceptaba y listo podia ver lo que kisiera, y no se si eso hace, pero no sabia nada de E22 y kinit, etc... hasta que mencionaste Bluetooth(E22).

pero bueno, voy a seguir buscando haber si encuentro como puedo emparejar los dispositivos con programacion C

mientras encuentro algo mas, nos vemos y gracias por la ayuda   ;D


Título: Re: hacer un programa bluetooth
Publicado por: SirGraham en 3 Marzo 2009, 20:42 pm
Hola,

Tienes las funciones en el Propio API de BlueZ para realizar un emparejamiento, controlar cuando y cual es el PIN que pide en la parte del PC. Tambien puedes configurar en el BlueZ un PIN constante (siempre el mismo) para que SOLO pregunte en el PIN en la parte del terminal REMOTO (ejm 1234).

Pero "evitar" que el terminal (el motorola en este caso) te pida PIN con solo realizar o programar una aplicacion en la parte del PC, me temo que eso no podras hacerlo... por lo que hemos comentado anteriormente.

Saludos,
Sir Graham.



Título: Re: hacer un programa bluetooth
Publicado por: Proxy Lainux en 3 Marzo 2009, 21:12 pm
hola

jejeje  ;D creo que estabas pensando que yo keria meterme en un celular por bluetooth sin que el celular me pidiera confirmaciones y contraseñas.. jeje, pero eso no lo quiero hacer...

jeje... bueno tambien tengo la culpa por no explicarme bien...

yo lo que quiero es meterme en mi celular pero respetando todo... sin saltarme algun paso osea si quiero que me informe que alguien se esta intentando vincular con mi telefono y que me pida contraseña... como cualquier otro programa para revisar tus archivos mediante bluetooth

pero como te mencionaba no encuentro como emparejar, sin importar que me pida contraseña,y  lo que no se es como verificar el pin para que mi celular kede libre y ver mis archivos, ahorita voy a ver sobre la api de bluez a ver que encuentro

pero disculpa si te confundi, es que apenas llevo dos dias con esto del bluetooth y apenas me estoy informando de cosas que cuando pregunto no se como llamarlas, hasta que alguien de aki me ayuda y empiezo a entender mas cosas... jeje

bueno voy a investigar el api y haber si puedo encontrar algo

gracias amigo... salu2  ;D



Título: Re: hacer un programa bluetooth
Publicado por: inu-z en 12 Marzo 2009, 14:10 pm
Wenas!
soy nuevo en este foro y tengo un problema parecido al que debaten en este hilo.
mi problema es el siguiente:
necesito hacer un programa en java que me permita enviar archivos .txt desde mi pc hasta mi telefono movil. el programa se debe ejecutar en el pc.
mi problema surge a l hora de conectar el pc con el movil para realizar el envio. me pueden prestar ayuda o dar alguna pagina de referencia??
muchas gracias


Título: Re: hacer un programa bluetooth
Publicado por: SirGraham en 12 Marzo 2009, 16:14 pm
Hola,

Si lo quieres hacer para PC, quizas JAVA no sea la mejor opcion....

Saludos,
Sir Graham.


Título: Re: hacer un programa bluetooth
Publicado por: inu-z en 14 Marzo 2009, 20:25 pm
tengo que hacerlo en java, porquees para una practica de la universidad, el problema es que no se ni cual es la libreria de java ni nada...
alguien puede ayudarme??


Título: Re: hacer un programa bluetooth
Publicado por: SirGraham en 15 Marzo 2009, 01:34 am
Hola,

Supongo que existiran librerias elaboradas para el tema, pero lo inicial para hacer bluetooth con Java es el API JSR-82.

Es el API con las funciones de Bluetooth para Java....

Saludos,
Sir Graham.


Título: Re: hacer un programa bluetooth
Publicado por: verito123 en 25 Junio 2009, 01:27 am
Hola de nuevo !!

Sir Graham necesito tu ayuda nuevamente ! Sigo con mi mismo proyecto...quiero hacer una aplicacion en j2se que sea el servidor y se conecte con una base de datos y una aplicacion en j2me para el telefono que se comunique a traves de bluetooth con el servidor y pueda recibir informacion.

Estoy en duda si programo el servidor sobre linux o windows...que me recomendas??

Gracias
Vero


Título: Re: hacer un programa bluetooth
Publicado por: SirGraham en 25 Junio 2009, 07:37 am
Hola,

Si lo haces en Java .... se supone que da igual no?

El entorno de Bluetooth de BlueZ es mas estable que el de Microsoft, pero visto desde Java me da que va ser igual.

Creo que en PC necesitaras un emulador del JSR-82 ya que me parece que no hay soporte de ese API en J2SE.

Saludos,
Sir Graham.


Título: Re: hacer un programa bluetooth
Publicado por: verito123 en 25 Junio 2009, 23:32 pm
Y si programo en c++ ?? este lenguaje tiene soporte de jsr-82¿



Título: Re: hacer un programa bluetooth
Publicado por: SirGraham en 26 Junio 2009, 07:48 am
Hola,

El C++ no tiene soporte para el API JSR-82 "por que no lo necesita"...   ;D los JSR son APIs de Java (exclusivamente).

La maquina virtual de Java para funcionar con las prestaciones al 100% necesita poder interactuar con su entorno (hardware and S.O) y poder posteriormente dar esa gestion (en forma de funcionalidad) al codigo de Java que se ejecuta en su interior. Eso lo hace atraves de unos APIs llamados JSR. No siempre estan disponibles en todas las implementaciones de la maquina virtual, por lo que no siempre se pueden ejecutar todos los programas de java (incompatibilidad).

C/C++ son lenguajes compilados (no interpretados) y siempre tienes disponible un API para su gestion (a no ser que la maquina no cuente con el). Asi pues si desde C/C++ no puedes hacer una cosa desde Java seguro que tampoco. Pero esta propiedad no es conmutativa....

Saludos,
Sir Graham.


Título: Re: hacer un programa bluetooth
Publicado por: verito123 en 29 Junio 2009, 14:27 pm
Sir Graham.... y en cual de los lenguajes me recomendas programar mi servidor (PC) ??
Hice unos programas en C++ hace unos años y Java estoy aprendiendo...
El servidor tiene que comunicarse con los telefonos y recibir paramentros para realizar la busqueda en la basse de datos y responderle al equipo.

Gracias


Título: Re: hacer un programa bluetooth
Publicado por: SirGraham en 29 Junio 2009, 16:25 pm
Hola,

Yo claramente me decanto por C (o C++ si pasas de unas 3000 lineas de codigo). No me cabe ninguna duda respecto a eso. Si lo haces muy bien puedes hacerlo portable entre Windows/Linux. Si no yo lo haria para este ultimo.

Saludos,
Sir Graham.


Título: Re: hacer un programa bluetooth
Publicado por: verito123 en 29 Junio 2009, 20:48 pm
Sir Graham... gracias por ayudar siempre!
pero tengo otra pregunta,,,,estoy tratando de decir el lenguaje...respondiste que preferias c antes que java, pero , porque c??
Segun tu punto de vista, cuales serian las ventajas de programar el servidor en C y no en Java ?

Gracias nuevamente
Vero


Título: Re: hacer un programa bluetooth
Publicado por: SirGraham en 29 Junio 2009, 21:33 pm
Hola,

En ambos sistemas (linux y windows) el C es el lenguaje nativo. Esto da acceso al hardware (incluido los stack de bluetooth).

En cambio en JAVA no tienes disponible en SE el API JSR-84. Con lo cual tienes que simularlo a traves de unas herramientas.

La decision en el server esta clara.

Saludos,
Sir Graham.


Título: Re: hacer un programa bluetooth
Publicado por: verito123 en 30 Junio 2009, 02:23 am
Gracias por la respuesta.

Ahora mismo comienzo programando el servidor.


Título: Re: hacer un programa bluetooth
Publicado por: miguelito01 en 15 Diciembre 2009, 17:28 pm
Buenas!

SirGraham por lo que e podido leer tienes un gran conocimiento de todo lo que tiene que ver con la programacion para blueetooth.

yo necesito hacer una aplicacion para windows que me detecte el bluetooth de un telefono y quisiera que me ayudara con eso...

esto es la primera parte de una practica para la universidad

por ahora solo necesito eso, eh estado viendo mucha informacion pero estoy muy confundico con cual lenguaje utilizar y eso

otra parte de la practica es que tiene que hacer una red "ad hoc" por bluetooth con los telefonos.

el fin es mandar mensajes con informaciones diferentes.


Título: Re: hacer un programa bluetooth
Publicado por: SirGraham en 15 Diciembre 2009, 19:09 pm
Hola,

Yo lo haria en C++. Hacer un Inquiry no es muy complicado. Existen en windows unas funciones especificas para ello.

Primero tienes que disponer de un modulo (dongle) bluetooth (normalmente USB) que sea COMPATIBLE con el STACK BLUETOOTH DE MICROSOFT. Este punto es importante.  Para ello es neceario disponer de Windows XP con SP2 o superior.

Saludos,
Sir Graham.


Título: Re: hacer un programa bluetooth
Publicado por: miguelito01 en 15 Diciembre 2009, 21:02 pm
Gracias por responder.
en el caso del modulo bluetooth que cumpla esas espesicicaciones...
me imagine que por ahi deberia de andar pero eh visto muchos modelos y marcas diferenes pero no veo ninguno que cuente con esa informacion a la vista...


Título: Re: hacer un programa bluetooth
Publicado por: miguelito01 en 16 Diciembre 2009, 06:20 am
SirGraham Disculpa que te moleste otra vez
pero tengo algunos problemas con la libreria de bluetooth.h de c++,la cual no la encuentro por parte.

y con respecto al modulo, si me pudieras orientar con una marca o modelo que cumpla con esas espesificaciones que me dijiste, porque esa informacion no esta a la vista en nungunos de los modulos de bluetooth que he visto...

Saludos:
miguelito01


Título: Re: hacer un programa bluetooth
Publicado por: SirGraham en 16 Diciembre 2009, 08:14 am
Hola,

La libreria esta dentro del Platform SDK de Microsoft. Tienes que bajarlo e instalarlo. Su configuracion dependera del compilador que uses.

http://www.microsoft.com/msdownload/platformsdk/sdkupdate/downlevel.htm

Modulos que usan "normalmente" el Stack de bluetooth de microsoft:

- Conceptronics
- SiteCom
- MAvin.
- Etc...

Digo "normalmente" por que una marca no te asegura este tema. El fabricante cambia el distribuidor de componentes (chipset) de Bluetooth, con lo cual puede cambiar de tipo de stack.

Saludos,
Sir Graham.


Título: Re: hacer un programa bluetooth
Publicado por: miguelito01 en 17 Diciembre 2009, 14:10 pm
Buenas SirGraham
disculpa si te he molestado mucho pero es que necesito esa aplicacion de detectar los telefonos y la verdad no soy muy programador...

te escribo acerca de un codigo de puso tu amigo Gospel hace mucho tiempo, se llama: "Programa 2 - Escanear y detectar dispositivos Bluetooth cercanos"

quisiera saber si este codigo se podria ejecutar en Windows y si se puede como lo podria hacerlo, descargue como me dijiste la plataforma SDK pero no se que hacer con ella...
tambien tengo instalado el Dev-C++ y Visual Studio

de verdad te agradeceria si pudiera ayudarme.

y disculpa todas las molestias.

Saludo.
miguelito01


Título: Re: hacer un programa bluetooth
Publicado por: SirGraham en 18 Diciembre 2009, 01:12 am
Hola,

Citar
disculpa si te he molestado mucho

Por su puesto que no me has molestado, aqui estamos para aprender y si puede ser intentar contestar a lo que se pueda. Pero si me gustaria hacerte un comentario: no contesto mensajes privados sobre preguntas genericas.

Por dos razones:

-1º Como la respuesta queda privada, nadie mas la podra verla. Con lo cual si alguien tiene el mismo problema o parecido se quedara sin esa informacion.

-2º Por descontado, no soy el que mas sabe del foro, si me haces la pregunta por privado, te restringes la posibilidad de que alguien te conteste y te de una respuesta mejor que la que pueda darte yo.


Citar
te escribo acerca de un codigo de puso tu amigo Gospel hace mucho tiempo, se llama: "Programa 2 - Escanear y detectar dispositivos Bluetooth cercanos"
quisiera saber si este codigo se podria ejecutar en Windows y si se puede como lo podria hacerlo

Que yo sepa ese codigo es para Linux. Si se puede ejecutar en Windows tendra que hacerse en un entorno emulado (dentro de windows) y dudo mucho que un emulador de este estilo te soporte gestiones de Bluetooth (yo por lo menos no conozco).

Una aplicacion de este tipo en Windows es totalmente factible. De echo nosotros tenemos echo cosas mucho mas complicadas en varios S.O.

Si quieres para Windows, tenemos la version XBlue Point Lite, que entre otras cosas hace lo que comentas:

http://www.xblue.es/xblue_point_lite.html (http://www.xblue.es/xblue_point_lite.html)

(al final de la pagina tienes un link para descargar una DEMO del producto).

Citar
descargue como me dijiste la plataforma SDK pero no se que hacer con ella...

Pues no se... ¿instalarla quizas?.  Perdona la ironia, presupongo o entiendo que lo habras echo ya.

Me pediste en el anterior mensaje donde estaban las librerias para el acceso a Bluetooth. Estan ahi. Una vez que instalales el Platform SDK tienes accesible por parte del Visual las librerias de Bluetooth (amen de otras cosas).

Citar
tambien tengo instalado el Dev-C++ y Visual Studio

Si tienes el Visual Studio 2003 o 2008 puedes empezar hacer cosas en bluetooth. Yo las haria en C++.

Si no eres programador, quizas es lo primero que tienes que resolver. No puedes empezar la casa por el tejado. Yo, por ejemplo, no soy mecanico y por eso no me pongo a arreglar coches.

Hacer un inquiry en Bluetooth no es muy complicado. Pero se te presupone que algo de conocimientos en programacion tienes que tener y haber echo algunas aplicaciones ya en windows (aunque sea de otro tipo).

Perdona mi sinceridad... pero me temo que es lo que hay...

Saludos,
Sir Graham.

 




Título: Re: hacer un programa bluetooth
Publicado por: miguelito01 en 18 Diciembre 2009, 08:41 am
SirGraham Gracias por responde...

Disculpa por los mensajes privados.

y si, vi y descargue la aplicacion demo que tiene en la pagina y ya la prove, me sirvio para probar el modulo de bluetooth y me funciono demostrando que es compatible con el Stack de bluetooth de microsoft.

y no hay problema por la sinceridad de tus respuesta ya que eso nunca esta de mas en el mundo...


Título: Re: hacer un programa bluetooth
Publicado por: RaNSaRoT en 14 Febrero 2010, 12:07 pm
Hola, siento reavivar este post, pero estoy aprendiendo programacion (ciclo superior) y querria hacer un programa para manejar el pc con bluetooth, es algo que quiero hacer por mi, no por cosa de estudios, entonces no puedo tampoco darle follon a profesor jeje. La cosa es que ya tengo instalado el SDK, pero no entiendo como usar el include en Dev-C++. Copie el include BluetoothAPIs.h en los includes de Dev-C, pero nada, no me deja compilar.. asi que si alguien me puede decir como se hace para que el include vaya, me haria un favor!, gracias por adelantado :)


PD: Solo se programar en C/C++ (mas bien C++ pero sin orientado a objetos, es como nos ha enseñado el profesor), orientado a objetos aun no lo he visto, dentro de 2 semanas empezaremos con Orientado a objetos.. pero de momento nada.. lo digo por que si no se puede hacer lo que quiero, sabiendo solo C++, pues decirmelo ya, para no perder mi tiempo xD. Gracias :)


Título: Re: hacer un programa bluetooth
Publicado por: kyps en 14 Febrero 2010, 12:11 pm
Python


Título: Re: hacer un programa bluetooth
Publicado por: SirGraham en 14 Febrero 2010, 12:43 pm
Hola,

No es que no se pueda realizar en C/C++... es que yo te recomendaria usar C/C++ como primera opcion.

Con perdon de kyps.... los que usan Phyton, Visual Basic o similares... no es por que sean mejores herramientas... es por que normalmente no lo saben hacer de otra forma.

C/C++ tiene una curva de aprendizaje mas alta, pero evidendemente te permite realizar cualquier tipo de acceso al API y por supuesto no tiene nada que ver el rendimiento que te da dentro de la aplicacion (en comparacion con cualquier lenguaje interpretado (o pseudo-compilado como java)).

No hay aplicaciones profesionales en el mercado echas en Python. No vas a encontrar el MS Word, el Photoshop, o el internet explorer echo en Perl, Python, ect... A lo sumo hay excepciones como el eclipse, que puede estar echa en Java y se ve claramente su rendimiento frente a otros IDEs.

Empieza por el Visual Studio .NET (2003 o 2008). Con eso y el Platform SDK tienes todo para empezar a compilar en Bluetooth para Windows.

El camino que has elegido es (a mi modo de ver) es el correcto... ahora bien hay que trabajar duro...

Saludos,
Sir Graham.




Título: Re: hacer un programa bluetooth
Publicado por: Enjjoy en 2 Septiembre 2010, 17:47 pm
Disculpas por revivir este tema tan antiguo , pero me encuentro medio complicado .Yo al = que la mayoría q  a escrito acá , necesito hacer un sistema que envié mensajes desde un pc con bluetooh a celulares equipados con bluetooh , pero no se como empezar , tengo conocimientos en programación. alguien que me de una manito :)
gracias !


Título: Re: hacer un programa bluetooth
Publicado por: SirGraham en 3 Septiembre 2010, 08:19 am
Hola,

Nosotros nos dedicamos a ese tema en EndoraSoft.

Quizas sea mas interesante que te pases por nuestro foro, que es mas especifico para el tema que comentas:

http://www.endorasoft.es/foro/

O bien mas concretamente aqui:
http://www.endorasoft.es/foro/viewforum.php?f=10

O Aqui: http://www.endorasoft.es/foro/viewforum.php?f=3

Saludos,
Sir Graham.