Slashdot Mirror


User: Pan+T.+Hose

Pan+T.+Hose's activity in the archive.

Stories
0
Comments
1,085
First seen
Last seen
Profile
(view on slashdot.org)

Comments · 1,085

  1. Amazing on Morphing Plane Wings for Efficient Flights · · Score: 1

    Penn State engineers have devised airplane wings that change shape like a bird and have scales like a fish.

    It must be fast like an exocoetidae.

  2. If you think this is Funny on Biometric ID Cards Ready For Trial In UK · · Score: 5, Informative

    "Good morning Doctor, this evil genius Tsutomu Matsumoto has compromised the great security of my biometric ID card again... I really think that this so called 'gelatin' circumvention substance should be outlawed! Anyway, could you please transplant me a new set of fingers?"

    If you think this is Funny, then you should read Fun with Fingerprint Readers from May 2002 issue of Crypto-Gram Newsletter by Bruce Schneier:

    Tsutomu Matsumoto, a Japanese cryptographer, recently decided to look at biometric fingerprint devices. These are security systems that attempt to identify people based on their fingerprint. For years the companies selling these devices have claimed that they are very secure, and that it is almost impossible to fool them into accepting a fake finger as genuine. Matsumoto, along with his students at the Yokohama National University, showed that they can be reliably fooled with a little ingenuity and $10 worth of household supplies.

    Matsumoto uses gelatin, the stuff that Gummi Bears are made out of. First he takes a live finger and makes a plastic mold. (He uses a free-molding plastic used to make plastic molds, and is sold at hobby shops.) Then he pours liquid gelatin into the mold and lets it harden. (The gelatin comes in solid sheets, and is used to make jellied meats, soups, and candies, and is sold in grocery stores.) This gelatin fake finger fools fingerprint detectors about 80% of the time.

    His more interesting experiment involves latent fingerprints. He takes a fingerprint left on a piece of glass, enhances it with a cyanoacrylate adhesive, and then photographs it with a digital camera. Using PhotoShop, he improves the contrast and prints the fingerprint onto a transparency sheet. Then, he takes a photo-sensitive printed-circuit board (PCB) and uses the fingerprint transparency to etch the fingerprint into the copper, making it three-dimensional. (You can find photo-sensitive PCBs, along with instructions for use, in most electronics hobby shops.) Finally, he makes a gelatin finger using the print on the PCB. This also fools fingerprint detectors about 80% of the time.

    Gummy fingers can even fool sensors being watched by guards. Simply form the clear gelatin finger over your own. This lets you hide it as you press your own finger onto the sensor. After it lets you in, eat the evidence.

    Matsumoto tried these attacks against eleven commercially available fingerprint biometric systems, and was able to reliably fool all of them. The results are enough to scrap the systems completely, and to send the various fingerprint biometric companies packing. Impressive is an understatement.

    There's both a specific and a general moral to take away from this result. Matsumoto is not a professional fake-finger scientist; he's a mathematician. He didn't use expensive equipment or a specialized laboratory. He used $10 of ingredients you could buy, and whipped up his gummy fingers in the equivalent of a home kitchen. And he defeated eleven different commercial fingerprint readers, with both optical and capacitive sensors, and some with "live finger detection" features. (Moistening the gummy finger helps defeat sensors that measure moisture or electrical resistance; it takes some practice to get it right.) If he could do this, then any semi-professional can almost certainly do much much more.

    More generally, be very careful before believing claims from security companies. All the fingerprint companies have claimed for years that this kind of thing is impossible. When they read Matsumoto's results, they're going to claim that they don't really work, or that they don't apply to them, or that they've fixed the problem. Think twice before believing them.

    Interesting, isn't it? See also: T. Matsumoto, H. Matsumoto, K. Yamada, S. Hoshino, "Impact of Artificial Gummy Fingers on Fingerprint Systems," Proceedings of SPIE Vol. #4

  3. Good morning Doctor on Biometric ID Cards Ready For Trial In UK · · Score: 1

    "Good morning Doctor, this evil genius Tsutomu Matsumoto has compromised the great security of my biometric ID card again... I really think that this so called 'gelatin' circumvention substance should be outlawed! Anyway, could you please transplant me a new set of fingers?"

  4. We Should Not Be Surprised on JPEG Patent Could Impact The Gimp · · Score: 1

    The GIF/Unisys fiasco should have tought us something.

  5. You are right on Appreciating Your Stressful IT Job? · · Score: 1

    I've noticed in IT jobs, the more you talk and interact with your coworkers in a positive and joking way, the less stressful the job is.

    You are right, I have also noticed that. It is much less stressful that way, as well as equally less productive, unfortunately (or fortunately--depandind on whether you are an employer or an employee).

  6. HDTV TiVo? It must have gigantic HD and CPU! on HDTV TiVo Now Shipping · · Score: 0, Redundant

    Is it easily hackable? It sounds like a great platform for a distributed high traffic relational database, does it not?

  7. What You Should Do: on Appreciating Your Stressful IT Job? · · Score: 2, Insightful

    I currently work as a website developer (mostly design-related work), but I also do some Perl and PHP programming. As most of you probably have, I've often wondered if I wouldn't enjoy working in a less stressful environment. I've even gone as far as to wonder if I'd prefer some sort of factory job or similar over my current field of work.

    Here is my suggestion: Quit your current job as soon as possible and find a job in a factory. Then, after you loose a finger or two you might start to realize that your previous webmonkey job was not even nearly as stressful as you naïvely imagined before. At that point the problem will have been solved: you will come back to your beloved web job in no time and, what seems to be much more important, you will stop insulting hard working factory workers by implying that their job is somehow less stressful than sitting all day in front of the God damned keyboard. Don't fool yourself, kid. Most of people working in factories would literally kill for a sissy job like yours or mine. We get six digits for sitting on our fat arses so please let us not talk about supposedly less stressful job of people who get seriously injured or even killed in the factories while making in a year what we make in a week. I believe those people deserve at least some of our respect because it is thanks to those very people why we can have our "stressful IT jobs." Please let us not forget about it and show minimum humility, for God's sake. We owe it to people who have died in factories manufacturing our computers, cars and clothes, and to their families, if not to our own humanism. Please think about it next time.

  8. Larry Wall? on Apocalypse 12 From Larry Wall · · Score: 1

    You are correct... most of the time, and Larry corrected me on part of this.

    You mean Larry Wall? I didn't know he reads my posts... Thanks, Larry!

  9. Really? on Apocalypse 12 From Larry Wall · · Score: 1

    But even then, you're not REALLY dealing with an int, you're dealing with a PMC that stores an int along with garbage collection information, a vtable that keeps track of how to modify it, etc.

    Really? I thought that the whole point of integer registers in Parrot was to not use PMCs (and the overhead thereof) for integer (and floating point, for that matter) computations, wasn't it? Aren't vtables used for PMCs only? Otherwise I wouldn't see much point in having separate sets of registers and in fact wouldn't see Perl's future in any computationally sensitive environment which I was really hoping to use it for and which I am only now starting to realize how utterly naïve it might sound for anyone knowing Parrot internals. As much as I hate to admit it, Java starts to look better and better for number-crunching the more I know about Perl and Parrot internals, so all of those people I was trying to convince might have been right as it turns out. Thanks. How do you garbage-collect integer registers, anyway? Sorry for so many questions but it is always a good time to learn something. Thanks a lot.

  10. My God! on SCO's Biggest Investor Admits It Loves IP Lawsuits · · Score: 3, Funny

    My God! SCO's Biggest Investor Admits It Loves IP Lawsuits?! I am shocked! Shocked, I say!

  11. Amazing on Military Develops Liquid Body Armor · · Score: 1

    The "Liquid Body Armor" sounds absolutely amazing. It is only for military right now, but I am sure that in about ten to fifteen years it will get mainstream and everyone will be able to drink it.

  12. Should We Be Surprised? on 31 Lawsuits Filed Over Alleged JPEG Patent · · Score: 1

    Hasn't the GIF/Unisys fiasco tought us anything?

  13. Congratulations! on Alan Kay Receives ACM Turing Award · · Score: 1

    My sincerest congratulations! This is an unbelievably prestigious award and in my opinion absolutely deserved in this case. Some people might not realize how hard it is to pass the Turing test. It is a really Big Deal. Bravo.

  14. You disagree? on Apocalypse 12 From Larry Wall · · Score: 1

    I disagree. Any language which removes basic assumptions made by lower-level languages (e.g. that my int won't become a string when I'm not looking) will "slow" the language.

    You may disagree, but as far as I know, even though Perl 6 removes those very assumptions by default, one is still free to explicitely impose them nonetheless, is one not?

    As an example of what I mean

    my int $x=1;
    my int $y=2;
    my int $z = $x + $y;

    What's the result? In your model, we would agree that the reuslt must be an integer, and specifically 1, but that's (woefully), not the case. You can't know that another thread hasn't womped the contents of $x and replaced it with a high level object that is "sort of 1" by the time the third statement executes.

    I was under the impression that in Perl 6 (or in "my model," if you will) int means a promise to the compiler that you are not going to store anything which is not integer and Perl's optimizer can use Parrot's Ixx register or some compact representation in the case of arrays.

    Worse,

    my int $x = foo();
    my int $y = bar();
    my int $z = $x + $y;

    Here, we don't even know if we're dealing with integer addition! If $x is a URI, then hold on to your seat and enjoy the ride, but you're not going to be sure of the result.

    We know, for you have used explicit int (not Int, mind you). Please read Apocalypse 2 by Larry Wall:

    "[...] there will also be lowercase intrinsic types, such as int, num, str and ref. Use of the lowercase typename implies you aren't intending to do anything fancy OO-wise with the values, or store any run-time properties, and thus Perl should feel free to store them compactly. (As a limiting case, objects of type bit can be stored in one bit.)"

    I am not aware of any changes to this decision but I might not be up to date with everything posted on the mailing lists. Could you please quote the relevant portion of some later text you are basing your knowledge on? Thank you. And excuse me if I had spread misinformation.

  15. What a Shame... on Apocalypse 12 From Larry Wall · · Score: 1

    The long awaited Apocalypse 12 finally gets published and what we as a Slashdot community are doing? We completely ignore it and post a story about some God damned satellite TV pirates, a stupid 419er Lost in Space, the daily SCO Stock update and literally dozens of absolutely unimportant stories on the front page instead! We even ask "Is Experience in Programming Worth Anything?" on the same day and than we completely fail to help people get said experience. Meanwhile on Perl6-Language mailing list:

    Austin Hastings:

    If it's not totally obvious to everyone, you should download a copy of A12 (I like the "printer-friendly" all-in-one-page version) as a hedge against the almost-inevitable slashdotting.

    Larry Wall:

    Or not...

    Perhaps slashdot has decided they don't frontpage PhD dissertations. :-)

    John Siracusa:

    Yeah, but did you see the story about that awesome new D language? It has a native "dictionary" type!

    Larry Wall:

    Hey, it supports C syntax, so maybe we could compile Parrot in it. :-)

    I think all of us should be ashamed. All of us. I have tried but failed. My post saying that this story should be on the front page has been even moderated as "Redundant." Just like every single Slashdot user, I am also partially responsible for this shameful incident. I can only say that I am very sorry and I do really hope it will not happen again, in the name of the entire Slashdot community which should be covered in shame.

  16. Not Rich? on Hackers: Under The Hood · · Score: 1

    She won't reply to your e-mailed entreaties, the flowers you send to her office, or the poetry you dedicate to her on your website. Some here have decided that licking her boots might do the trick, but don't count on it. She's just like every other chick who gets her picture on a page someplace: if you ain't rich, you don't have a chance.

    How do you know about my poetry? And who said I am not rich?

    Wait a minute, is that some kind of a joke? Quite a distasteful one if so...

  17. Reasonable Starting Salary on Reasonable Salary for Entry Level Programmers? · · Score: 1

    It is somewhat distressing that I have spent 4 years of college and years before that developing my programming skills.

    If you want to be a programmer, stop complaining every time something is distressing for a good start, because distress will have to become your second name. This is not an easy job if you plan to be even remotely competent. Seriously. If four years of learning is too much for you, then please give up now while you are still young, because for any half-decent programmer every year means learning, learning, learning. You should probably spend at least as much time learning as working. Always remember that learning is much more important than working, because it will help you work better.

    I am not trying to get rich,

    Great. Tell that to your employer and I can guarantee you that.

    but I was hoping that the high level of skill required would account for something(no offense intended to waiters).

    None taken.

    Can anyone give me any insight about what a reasonable starting salary would be, for an entry level software engineer?"

    With such an attitude you will probably end homeless pretty soon. Your most important problem is that you want a reasonable starting salary. What you really need is an unreasonable starting salary. Every time I hire someone who talks about "reasonable salaries" or "not being greedy" I note two most important things to myself: primo: remember to pay minimum rates; secundo: probably an incompetent worker. I am not saying that people demanding more money are always better, mind you. This is just a rule of thumb. Also, you should always say that you don't have a girlfriend because your employer knows that this is the only way you can possibly have time and will to devote most of your free time to learning and to perfecting the art of programming. I have noticed that the best programmers I have ever hired are those with anti-social nature but with very big ego. So don't try to play a "popular" kind of guy, unless you want to get a marketing job. Always remember to have some proof of high IQ, e.g. the Mensa membership card. What can I add... Just be yourself and everything should be all right. Don't forget about learning. I wish you the best luck.

  18. Great on Montreal Parking Meters Run Linux · · Score: 1

    Montreal Parking Meters Run Linux

    Those stupid parking meters have already costed me more than the God damned SCO license. Imagine my surprise when I found out that parking fines are not covered by OSRM insurance. Thanks a lot, Linux.

  19. My Sincerest Apology on Hackers: Under The Hood · · Score: 1

    Hi. It's really nice to know that whatever I can do technically, that it's my cup size that really matters.

    I would like to sincerely apologize in the name of the entire Slashdot community, most of which sadly consists of people not only utterly infantile but also insultingly unintelligent, as I am sure you have already noticed. I can assure you that even though I personally find you very attractive, I will avoid commenting your undoubtedly exceptional beauty nonetheless, for I am myself hardly sexiest by any stretch of imagination. Let us therefore go straight to the meritum and talk about one thing that really matters, i.e. software.

    I'm 28. I do backbone security, incident response, vulnerability assessment, and pen-testing. I work in varying capacities with Nessus, Snort, and the Open Source Vulnerability Database.

    That is very impressive indeed. It is certainly inspiring to hear that someone of your intelligence, skills and experience chooses to work with free software tools. I would be very interested what is your operating system of choice and what do you think about Debian GNU/Hurd, Keykos, EROS and OpenBSD, as a general operating system design as well as the security implications thereof. I look forward to read more of your texts on Slashdot from now on.

    And fuck you.

    Please don't lower your high standards to match those poor simpletons (or "trolls" if you will) who seem to enjoy shamefully insulting any woman which is much smarter than them. They just sicken me. You will see that surprisingly high percentage of Slashdot users could be described as nothing more but a room-temperature IQ crowd. In fact, it is surprising that those illiterate imbeciles can even write.

    The idea that Slashdot is an "elite" of any kind is simply laughable in its naïvete. I can only suggest you to ignore all of those foolish morons, for they don't deserve any of your attention whatsoever. Clicking on the circle next to the username you can mark any user as a friend or foe, and set positive bonus for friends and negative for foes in the People Modifier section of your Comments Preferences page.

    Going back on topic, I have one more question: Could you tell us how did you do it that all of your posts are rated as Score:5, Insightful or at least Score:5, Interesting? I find it very intriguing. Have you found a vulnerabilty in the Slashcode itself? Will you disclose it?

  20. Interesting on Apocalypse 12 From Larry Wall · · Score: 1

    Actually, we were talking about Roles (though not calling them that) before that paper was written. It was good fortune that two members of the design team caught Andrew Black's presentation of the paper and sent it along to Larry with a note saying "This must be a good idea; Smalltalkers are thinking about it too!"

    That makes Perl 6 even more innovative than I was previously trying to demonstrate. Are there any other areas of Perl 6 (other than Rules, for regular expressions were always cutting-edge in Perl) which might be examples of true innovation unheard of in other languages? All of the new dispatch mechanisms and hyper operators seem like good candidates.

  21. Very True and Insightful on Apocalypse 12 From Larry Wall · · Score: 1

    As a sidenote I might add that Perl 6 will support the functional paradigm.

    Perl5 supports *portions* of it already. closures are already fully supported, as well as list-transformation functions. I suppose you meant that Perl6 will widen its support so that it can handle full-blown FP with continuations and the whole works, which matches what I've heard.

    Closures are already supported indeed, but Perl 5 lacks the essential built-in support of lambda calculus. It will change in Perl 6. As Larry Wall has said on perl6-language mailing list on December 2002, "About the only things that have to be truly built-in to Perl 6 are lambda and the regex engine. Everything else is negotiable. (I'm counting method dispatch under 'lambda', of course..." Perl 6 thus will fully support the functional programming paradigm. This is great news for anyone seriously into computer science in general and artificial intelligence in particular.

    It is just not the only paradigm it will support.

    Heckno. Perl will always support contextual programming and imperative programming; object-oriented programming and functional programming are both getting huge boosts in Perl6, and there's talk of logical/declarative paradigm stuff slipping in e.g. from Prolog. Perl is fundamentally a multiparadigmatic language; you can use whichever paradigm is the best fit for the problem space of your program, and you can freely mix and match the paradigms at will, which I do. It's often convenient, for example, to have an object method accept as one of its arguments a coderef (e.g. to use as a callback), which can be a closure. Going the other way, a closure (or a set of related closures) can retain objects and use them to do stuff. I do this stuff today in Perl5. With Perl, you get the best parts of all paradigms. This will be even more true in Perl6, which is getting both real objects *and* continuations, among other things. The support for contextual programming is also being beefed up; a routine will be able to return an object that knows how to return one value in numeric context, another value in string context, and so on. (My personal favourite four-word quote from the Apocalypse series so far is "interesting values of undef". If you don't know why this is awesome, you do not yet fully grok the contextual programming paradigm.)

    I can only agree wholeheartedly.

    And yeah, Haskell is more innovative than pragmatic. The innovative things about Perl are three: context, the CPAN, and assimilation. Assimilation in this context means that the Perl dev team actively hunts down other languages and incorporates their nifty features into Perl.

    Perl is a truly postmodern language in that regard. It has started as a duct tape of Internet and is inevitably becoming the most powerful Swiss Army chainsaw ever known to man.

    There's been a lot of talk about Smalltalk and Haskell on perl6-language, for example. One could argue that another way to say this is, "Perl prefers to let other languages do its innovation for it." But it seems to be a pretty good model. None of the other languages seem to have all of the nifty features that Perl has together in one language.

    Very true. For example, the Roles in Perl 6 are inspired by what is called Traits in this research paper presented on the European Conference on Object-Oriented Programming only months ago. It is quite an innovative idea and as far as I know it has been only implemented in Smalltalk as an experiment made for that very paper.

    Context IMO is the most innovative thing about Perl. The CPAN also rocks.

    It most definitely rocks indeed.

  22. Slow Languages on Apocalypse 12 From Larry Wall · · Score: 2, Interesting

    Everyone is right here. There is no one language which is best for everyone. Perl 5, Perl 6, Ruby, Python, Lisp, Scheme... They are all going to target Parrot so we will be able to choose our favourite language and still work together instantiating our objects and even inheriting from each other's classes crossing the cross-language boundaries.

    Wow! What a wonderful and innovative idea, totally unlike anything anyone has done before!

    JVM is not exactly language-independent. It is not very well suited for dynamically typed languages such as Perl 5, Perl 6, Ruby, Python and in fact even for languages like Lisp and Scheme. Thought, with few exceptions like immutable strings or some uninheritable base classes, JVM is quite a nice environment for statically typed languages with simple single-inheritance object models like Java.

    The Microsoft .Net on the other hand is not very platform-independent and I don't think it ever will be, while still supporting mostly statically typed languages. Besides, it didn't even exist at the beginning of Parrot project...

    In any case, none of them runs Perl 5, Perl 6, Ruby, Python, Lisp and Scheme which I was talking about. So yes, Parrot is in fact totally unlike anything anyone has done before. Very true.

    As long as you only want to write in slow interpreted languages, it's not a bad idea. Personally when I use Lisp I compile it to native code, and it runs FAST. When I use ML I compile it to native code, and it runs FAST. When I use Perl... I spend several minutes twiddling my thumbs. No thanks.

    There is no such a thing as slow language. The only way in which a language per se can be slow is the parsing time. Of course Perl 6 having unprecedentedly rich (and even self-modifying) syntax will always be much harder to parse than Lisp which is basically a manually written parsed tree. However, you will always be able to compile it once and store Parrot bytecode or native binary. Even without compiling it to a native binary, there is JIT engine which can run critical parts of the bytecode as single assembly instructions on harware registers if you give enough hints to the compiler. See the files in parrot/jit directory in the CVS. It is really worth reading.

  23. Any examples? on Apocalypse 12 From Larry Wall · · Score: 1

    By the way, I see very little that's innovative in Perl 6 - it's a melting-pot combining nice features from many languages, not a research project.

    Could you be more specific on which exactly innovative features are you missing in Perl 6? It is not too late to suggest them.

  24. Haskell -> Parrot on Apocalypse 12 From Larry Wall · · Score: 1

    Well, if you want a innovative language (rather than a pragmatic one), Haskell should definitely not be left out. Granted, it may be a little hard to use if you just want to write real-life programs (quite a lot of computer-science stuff are involved just for mutable state), but its interestingness beats OCAML and even Lisp if you are getting tired of 20 slightly different imperative languages. The language is also well supported in the free software community.

    Haskell is very interesting indeed. And there are already plans to write a Haskell compiler targetting Parrot. (The relative interestingness is a very subjective matter, though.) There is already a Scheme compiler written by Juergen Boemmels and Jeffrey Goff (version 0.0.11 is "Functioning, as far as implemented. Lists and functions are working but many functions are missing implementation.") so Lisp, OCAML and Haskell compiler writers will have some interesting prior art to base their compilers on. I really look forward to having as many languages targetting Parrot as possible. The very recent ONLamp article, Building a Parrot Compiler (It's not just for Perl 6 anymore) by Dan Sugalski, is a great start for anyone planning to write a Parrot-targetting compiler. That's pretty amazing that three years ago Parrot was only an April Fool's joke...

    Of course, I'm not disparaging Larry's work here. Perl is a good and pragmatic language, and I'm glad to find it getting rid of the historical ugly parts..

    As a sidenote I might add that Perl 6 will support the functional paradigm. It is just not the only paradigm it will support.

  25. Interesting notes on Parrot on Apocalypse 12 From Larry Wall · · Score: 1

    Please let us all keep in mind that only three years ago Parrot was merely an April Fool's joke (and quite brilliant at that). See the original Perl and Python Announce Joint Development press release on use Perl, the interview with Larry Wall and Guido van Rossum on Perl.com and the O'Reilly book announcement: Programming Parrot in a Nutshell by Guido van Rossum and Larry Wall. Does anyone remember the Perl + Python = Parrot Slashdot story? I am sure that back then absolutely no one was expecting that it might all come true some day. That's amazing how much has happened during those last few years.