Nirav Patel has produced an OpenSCAD 3D model that can produce working Kwikset and Schlage door-keys from the lock-code of the keys. Practically speaking, it means that if you know something about the lock (which you can derive from an image of the key), he can produce a 3D-printable model of a key that will open it. It's also a good way to check the calibration accuracy of your 3D printer.
Designing the key model was actually pretty straightforward. I measured a key with a ruler and calipers and created an approximate model of it that is reasonably easy to print. I then got pin depth specifications and parametrically differenced them out of the model. To generate new keys, you can just edit the last line of the file and enter in the key code for your key. If the code isn't written on the key, you can measure the height of each bit and compare to the numbers in the Root Depth column on the aforementioned pin depth site. Perhaps more nefariously, you could implement something like SNEAKEY to generate key codes without physically measuring the key.