I have just released a simple tool, called GALD, which will make our life as developers easier since it allows you to detect the line where the memory problem is.

The good thing is you don’t need to replace the standard malloc(), calloc(), realloc() or free() functions since a macro subsystem will address link these to the GALD’s functions.

You just need to #include and run the application to check if you missed something while coding.

I look forward to hearing from you with desired improvents or any other comments.

1. Thou shalt not trust user inputs.

2. Thou shalt not trust other applications usage of your APIs.

3. Thou shalt not trust any files, network incoming data yourapp may process.

4. Thou shalt not overstimate the size of the destinations buffers.

5. Thou shalt close all the strings (with the NULL character).

6. Thou shalt free all allocated memory.

7. Thou shalt not allocate more resources than needed.

8. Thou shalt reuse as much code as possible.

9. Thou shalt design before coding.

10. Thou shalt DOCUMENT!!

This September I will attend to a interesting summer school organized by the Nicolas Cabrera Institute (Universidad Autonoma de Madrid). I know I will enjoy it for sure since I love this field but I think it is not going to be easy, a lot of advanced mathematics are going to be used to explain these engines of life.

I paste the program below with the links to the abstracts:
Biophysics of genetic networks

Bela Novak. ‘Mathematical modeling of molecular regulatory networks’

Mark Goulian. ‘Two-component signaling in bacteria’

Pablo Iglesias. ‘Feedback control in biological signaling pathways’

Biophysics of neuronal circuits

Björn Brembs. ‘Brains as output/input devices’

Fabrizio Gabbiani. ‘An introduction to neural information processing and coding’

Dmitri Chklovskii. ‘Statistical theory of brain design’

Biophysics of single molecules and cell organization

Patricia Bassereau. ‘Molecular motors and intracellular traffic’

Migration from a two factor to a three factor authentication electronic bank system.

Nowdays, almost all of the e-banking systems in Spain have already switched to a two factor authentication system based on:

  1. PIN
  2. a Token Card (Tarjeta coordenadas, a card with a matrix of numbers printed which the system ask to enter randomly)

For almost every human is quite hard to remember an unrelated sequence of random numbers, that’s why most of the users still write down their PIN and keep them together the cards or choose easy numbers like birthdays. If the cards are stolen the thief could bypass easily the second method since it just ask to enter the numbers at random positions being completely useless from a security point of view.

I propose an easy way to extend this system to a 3 Authentication method just asking for an extra number from the token card when logging in the system.

The client should be provided of a method easy enough to remember without writing it down but hard to guess. This method should be chosen randomly from a list trying to distribute them homogeneusly among all the clients.

This method could be sent to the user via the channel used to send the PIN.

The methods I propose should allow to select a cell from the card increasing the security of the system, such methods could be similiar to the detailed below:

  • Introduce the first asked cell
  • Introduce the cell corresponding the current month
  • idem but current day
  • select the cell using the 3rd number of your credit card number.
  • etc

These are just some examples which are easy to remember and hard to guess for any guess since there a large amount of methods of given the system the extra number.

If you notice this method shows any weakness please email me.

Hereby I publish a draft of a paper, Useful Polymorphism in C, where you could find some interesting and straightforward features of Object Oriented languages applied to our favourite language. It relies in the C structures to simulate the OO polymorphism and in organizing the headers and source files in a way in helps to achive the goal.
I am not sure if I will finish the paper ever but it has enough literature to understand the whole idea and contains quite lines of code which helps to go ahead and get it working.
I know a bunch of stuff have been written about OOing C but here I just try to apply the semantic of Polymorphism avoiding the use of hilarious syntax. I hope find it interesting.

I will no publish more entries in the blog till some of the projects I am involved reach an enough mature point to make them available.

No enough to cope with this

After some suggestion from Gonzalo G. de Polavieja, the director of the NeuroLab, I have updated my CPG to be more biologically plausible.

I have kept the Izhikevich’s model but now the two neurons exhibits fast rebound spiking. The Action Potentials plots looks absolutely better.

Do you have a virtual machine running a UNIX-like or Windows as guest OS, instead a physical one, as part of your organization network? Take CARE! Because it is more evil than it looks!

If you are thinking on using VMWare Workstation or similar you should test the issues I present below. They look to be fixed with the VMWare ACE version.

Have you ever tried to gain root access in one of your companies’ computer to sniff? Have you ever tried to crack someone’s else password? And you have spend hours, days surfing the web looking for an exploit ?

Now you don’t have to worry anymore if you use VmWare at work! With VmWare you will be able to read in plain text the password of the incoming ssh connections or even you could change your id to 0. And you only need to run VmWare nor even being superuser in the OS under VmWare. Does it sound good? Read ahead!

1) Looking for plain text password (I have tested it with OpenBSD & Linux + OpenSSH under VmWare):

Once someone has logged in your local OS you just need to suspend the VmWare machine (you know the [ | | ] symbol).
Afterwards, go straight to the directory of the Virtual Machine and edi, preferably with an hex editor, the “xyz.vmem” file.
Look for “ssh-connection”, you will find it several times before the password appear. The text sourrounding the password is like the following:

ssh-connection.....password....Cabronazo#####

Being Cabronazo the password and ### garbage.
2) Gaining root access:

Do you run an Unix-like OS under VmWare at work? Bad Idea!! (If it is not properly configured, obviously) You can gain root just with a few key-strokes and an hex editor. Look for "username:" and just change all the pid to 0.

It is easy! isn't it?

Finally I have managed to finished two half-center oscillators. I have used the model developed by Izhikevich which needs few floating point operations but still shows the desired biological properties.

Please refer to the Central Pattern Generatos section to a more detailed explanation I have included the Matlab files used to generate the graphics. It will be growing up in the next days.

This is the first post in the category of Computational Neuroscience and shouldn’t be the last. When I have read this papers I will post a summary of them, highlighting the main ideas.

These two papers are needed for the most astonishing project I have ever worked, hold on for a half a year and you will see :)

Central Pattern Generators

CPG for swimming

The papers below have been found trying to find projects which use any models of CPGs or whatever information that could help to understand the behavior and interconnection of these amazing bunch of neurons.
CPG to control a pyloric-based system

Rethinking CPGs

CPG for artificial locomotion

Distributed CPG for a serpentine Robot

If you are reading this and have any useful comment, please POST it below! Thank you

More related stuff

Raptor Central pattern generators

Swimming simulation from Neurobiology