Forum Settings
       
« Previous 1 2
Reply To Thread

20% chance of false drunk driving reading? That's not good. Follow

#1 May 16 2009 at 12:10 PM Rating: Excellent
Avatar
******
29,919 posts
Let me preface this by saying, I have been hit by a drunk driver, and I'm of the oppinion that if you drive while drunk, it should be legal to kill you in the most painful manner possible at will. That being said, the system needs to have accountability. A drunk driving conviction should destroy your life. A false drunk driving conviction should never be a possibility, as the technology to determine it is very straightforward. The errors in software discovered by the independant review will likely lead to thousands of drunk driving convictions across the U.S. being overturned on appeal, and many of those people will end up driving again.

http://www.schneier.com/blog/archives/2009/05/software_proble.html

May 13, 2009
Software Problems with a Breath Alcohol Detector
This is an excellent lesson in the security problems inherent in trusting proprietary software:

After two years of attempting to get the computer based source code for the Alcotest 7110 MKIII-C, defense counsel in State v. Chun were successful in obtaining the code, and had it analyzed by Base One Technologies, Inc.
Draeger, the manufacturer maintained that the system was perfect, and that revealing the source code would be damaging to its business. They were right about the second part, of course, because it turned out that the code was terrible.

2. Readings are Not Averaged Correctly: When the software takes a series of readings, it first averages the first two readings. Then, it averages the third reading with the average just computed. Then the fourth reading is averaged with the new average, and so on. There is no comment or note detailing a reason for this calculation, which would cause the first reading to have more weight than successive readings. Nonetheless, the comments say that the values should be averaged, and they are not.
3. Results Limited to Small, Discrete Values: The A/D converters measuring the IR readings and the fuel cell readings can produce values between 0 and 4095. However, the software divides the final average(s) by 256, meaning the final result can only have 16 values to represent the five-volt range (or less), or, represent the range of alcohol readings possible. This is a loss of precision in the data; of a possible twelve bits of information, only four bits are used. Further, because of an attribute in the IR calculations, the result value is further divided in half. This means that only 8 values are possible for the IR detection, and this is compared against the 16 values of the fuel cell.

4. Catastrophic Error Detection Is Disabled: An interrupt that detects that the microprocessor is trying to execute an illegal instruction is disabled, meaning that the Alcotest software could appear to run correctly while executing wild branches or invalid code for a period of time. Other interrupts ignored are the Computer Operating Property (a watchdog timer), and the Software Interrupt.


Basically, the system was designed to return some sort of result regardless.

This is important. As we become more and more dependent on software for evidentiary and other legal applications, we need to be able to carefully examine that software for accuracy, reliability, etc. Every government contract for breath alcohol detectors needs to include the requirement for public source code. "You can't look at our code because we don't want you to" simply isn't good enough.
____________________________
Arch Duke Kaolian Drachensborn, lvl 95 Ranger, Unrest Server
Tech support forum | FAQ (Support) | Mobile Zam: http://m.zam.com (Premium only)
Forum Rules
#2 May 16 2009 at 1:26 PM Rating: Excellent
As stated in a previous thread, I work for a company and makes and distributes BAIIDs. All I can really say is that my company knew that particular breath alcohol detector was complete garbage. Out of all the devices on the market, the Draeger device has always been known to be buggy and give horribly inaccurate readings.

To be clear, the Draeger device is a unit that police carry in their cruisers to measure the BAC(breath alcohol content) of people that have been pulled over. This means that there very well could have been many people charged with DUI who were actually well under the legal limit. My company makes BAIIDs (breath alcohol ignition interlock device), which are the devices that courts order to be installed into the vehicles of people convicted of DUI offenses.

EDIT: lol, rated down, Probably from ****** that has a BAIID in their car.

Edited, May 17th 2009 3:23pm by Tzemesce
#3 May 16 2009 at 3:47 PM Rating: Good
I would never submit to a breath test. Now I have yet another reason to justify it.
#4 May 16 2009 at 9:45 PM Rating: Good
Quote:
I would never submit to a breath test. Now I have yet another reason to justify it.


As is your right. Ans it's the duty of the Officer to then arrest you and take away your license for 6 months or more.
____________________________
"The Rich are there to take all of the money & pay none of the taxes, the middle class is there to do all the work and pay all the taxes, and the poor are there to scare the crap out of the middle class." -George Carlin


#5 May 16 2009 at 10:53 PM Rating: Good
***
2,824 posts
You are allowed a blood test at the station if you refuse the breath test.
#6 May 17 2009 at 12:27 AM Rating: Decent
Bruce Schneier wrote:
2. Readings are Not Averaged Correctly: When the software takes a series of readings, it first averages the first two readings. Then, it averages the third reading with the average just computed. Then the fourth reading is averaged with the new average, and so on. There is no comment or note detailing a reason for this calculation, which would cause the first reading to have more weight than successive readings. Nonetheless, the comments say that the values should be averaged, and they are not.
He needs to learn to do the math right - this gives the last reading the highest weight, and each preceding reading has half as much (except for the first reading, which has the same weight as the second).

Other than that nitpick, my response would be a "yes" in [lg] tags to the rest of this, but we can't use [lg] tags so someone else will have to do so for me.
#7 May 19 2009 at 3:01 AM Rating: Decent
**
496 posts
I'm relatively sure (though not even close to certain and a quick google could not find the answer) that in Australia the preliminary breath test is taken, and then a blood test.

Although the blood test may be for prosecuting purposes as opposed to on the spot testing for alcohol.

But still scary and stupid that they use such imprecise technology (same as speed camera's, there was an outcry against dodgy speed cameras a few years ago that cost the government $19mil in fines repaid)
#8 May 19 2009 at 3:08 AM Rating: Decent
***
3,229 posts
Dread Lörd Kaolian wrote:
2. Readings are Not Averaged Correctly: When the software takes a series of readings, it first averages the first two readings. Then, it averages the third reading with the average just computed. Then the fourth reading is averaged with the new average, and so on.


Well really, was this system designed by a chimp?
#9 May 19 2009 at 6:50 PM Rating: Decent
Encyclopedia
******
35,568 posts
Goggy wrote:
Dread Lörd Kaolian wrote:
2. Readings are Not Averaged Correctly: When the software takes a series of readings, it first averages the first two readings. Then, it averages the third reading with the average just computed. Then the fourth reading is averaged with the new average, and so on.


Well really, was this system designed by a chimp?


Not necessarily. There are systems in which you want to use an averaging process like that. Some measuring devices are wildly inaccurate at first, then "settle" on a value over time. The resulting output will look like a wave form with a wide amplitude over the first X amount of time, then decrease towards a normative middle over time. If you take measurements of that waveform at regular intervals during a given time frame, you can get very inaccurate results because of this effect.

When you have a form like that, you want to average in the manner mentioned. It puts more weight on the "settled" values at the end of the wave form than the more variant measurements at the beginning. It's a little hard to explain, but if you see the results on a graph, you'll understand why it's a useful technique.


I suspect this is more of a documentation error than an actual process error.


The more relevant point is whether or not you think the system has flaws based on the software design, but whether or not the results consistently meet the requirements. Kao wrote in his title about a 20% chance of a false reading, and maybe I'm missing something, but I don't see where that's written in either the story he linked, or the link contained on that page to the court case.

Does the device fail to produce accurate results? That's the only relevant question. They could use the most bizarre process imaginable, but if it's able to consistently recognize when people are too drunk to drive, then it's working properly.
____________________________
King Nobby wrote:
More words please
#10 May 19 2009 at 7:27 PM Rating: Excellent
Avatar
******
29,919 posts

someone better at math than me wrote:

For those interested, here's what the "buckets" of analog to digital (might) look like given error 3 in the article. Buckets are a range of real values that would be reported as a single output reading after D/A processing.

Assuming the machine was sensitive up to .5% BAC (just above LD50 for human adults)


4095 discrete D/A conversions = 0.0001221% BAC per bucket

4095/255 ~= 16 discrete D/A conversions = 0.03125% BAC per bucket

4095/255/2 = 8 discrete D/A conversions per bucket = 0.0625% BAC per bucket

The specific problem here is illustrated by the second bucket in the 8 discrete measures scenario: that bucket spans a large conversion domain from 0.0625 (legal, most states) to 0.125 (illegal, most states).

In fact, the "legal" part of that bucket (.0625 up to .1) occupies 60% of the domain, and the "illegal" part (.1 up to 1.25) occupies only 40% of that domain.

If the device shows that a person is blowing a BAC in that bucket, there's a 60% chance that they're actually under the legal limit (assuming no other source of error).


Edited, May 19th 2009 8:27pm by Kaolian
____________________________
Arch Duke Kaolian Drachensborn, lvl 95 Ranger, Unrest Server
Tech support forum | FAQ (Support) | Mobile Zam: http://m.zam.com (Premium only)
Forum Rules
#11 May 19 2009 at 7:34 PM Rating: Excellent
****
4,158 posts
Now I'm just a layman but if you are driving around after drinking even 60% of a bucket of beer (even that wussy American ****) then you definately deserve to lose your licence.
____________________________
"If you have selfish, ignorant citizens, you're gonna get selfish, ignorant leaders". Carlin.

#12 May 20 2009 at 2:06 AM Rating: Decent
***
3,229 posts
gbaji wrote:
Goggy wrote:
Dread Lörd Kaolian wrote:
2. Readings are Not Averaged Correctly: When the software takes a series of readings, it first averages the first two readings. Then, it averages the third reading with the average just computed. Then the fourth reading is averaged with the new average, and so on.


Well really, was this system designed by a chimp?


Not necessarily. There are systems in which you want to use an averaging process like that. Some measuring devices are wildly inaccurate at first, then "settle" on a value over time. The resulting output will look like a wave form with a wide amplitude over the first X amount of time, then decrease towards a normative middle over time. If you take measurements of that waveform at regular intervals during a given time frame, you can get very inaccurate results because of this effect.

When you have a form like that, you want to average in the manner mentioned. It puts more weight on the "settled" values at the end of the wave form than the more variant measurements at the beginning. It's a little hard to explain, but if you see the results on a graph, you'll understand why it's a useful technique.


I suspect this is more of a documentation error than an actual process error.


The more relevant point is whether or not you think the system has flaws based on the software design, but whether or not the results consistently meet the requirements. Kao wrote in his title about a 20% chance of a false reading, and maybe I'm missing something, but I don't see where that's written in either the story he linked, or the link contained on that page to the court case.

Does the device fail to produce accurate results? That's the only relevant question. They could use the most bizarre process imaginable, but if it's able to consistently recognize when people are too drunk to drive, then it's working properly.


What are we trying to measure here? Blood/alcohol level per X mg's. We take three readings here in the UK and the evidence test is the lowest test of the three.

Why complicate it any more than that?
#13 May 20 2009 at 6:11 AM Rating: Decent
***
1,087 posts
Well, to Nit Pick, there is no "Legal Limit" read the laws if interested.
#14 May 20 2009 at 6:22 AM Rating: Decent
***
3,229 posts
Terrifyingspeed wrote:
Well, to Nit Pick, there is no "Legal Limit" read the laws if interested.


The world doesn't revolve around Ca/USA Smiley: mad
#15 May 20 2009 at 6:24 AM Rating: Excellent
Will swallow your soul
******
29,360 posts
Terrifyingspeed wrote:
Well, to Nit Pick, there is no "Legal Limit" read the laws if interested.


I'm not quite sure I take your point. In California the law reads as follows:

Driving Under Influence of Alcohol or Drugs

23152. (a) It is unlawful for any person who is under the influence of any alcoholic beverage or drug, or under the combined influence of any alcoholic beverage and drug, to drive a vehicle.

(b) It is unlawful for any person who has 0.08 percent or more, by weight, of alcohol in his or her blood to drive a vehicle.

For purposes of this article and Section 34501.16, percent, by weight, of alcohol in a person's blood is based upon grams of alcohol per 100 milliliters of blood or grams of alcohol per 210 liters of breath.

In any prosecution under this subdivision, it is a rebuttable presumption that the person had 0.08 percent or more, by weight, of alcohol in his or her blood at the time of driving the vehicle if the person had 0.08 percent or more, by weight, of alcohol in his or her blood at the time of the performance of a chemical test within three hours after the driving.

(c) It is unlawful for any person who is addicted to the use of any drug to drive a vehicle. This subdivision shall not apply to a person who is participating in a narcotic treatment program approved pursuant to Article 3 (commencing with Section 11875) of Chapter 1 of Part 3 of Division 10.5 of the Health and Safety Code.

(d) It is unlawful for any person who has 0.04 percent or more, by weight, of alcohol in his or her blood to drive a commercial motor vehicle, as defined in Section 15210.
____________________________
In a time of universal deceit, telling the truth is a revolutionary act.

#16 May 20 2009 at 11:55 AM Rating: Decent
Encyclopedia
******
35,568 posts
Dread Lörd Kaolian wrote:

someone better at math than me wrote:

4095 discrete D/A conversions = 0.0001221% BAC per bucket

4095/255 ~= 16 discrete D/A conversions = 0.03125% BAC per bucket

4095/255/2 = 8 discrete D/A conversions per bucket = 0.0625% BAC per bucket

The specific problem here is illustrated by the second bucket in the 8 discrete measures scenario: that bucket spans a large conversion domain from 0.0625 (legal, most states) to 0.125 (illegal, most states).

In fact, the "legal" part of that bucket (.0625 up to .1) occupies 60% of the domain, and the "illegal" part (.1 up to 1.25) occupies only 40% of that domain.

If the device shows that a person is blowing a BAC in that bucket, there's a 60% chance that they're actually under the legal limit (assuming no other source of error).



Which, I'll go out on a limb, is presumably why there are multiple measurements taken, and why the "odd" averaging system is used.

Or do you really think the final output of the machine can either show .06% or .12% and nothing in between. If whomever did that math was correct, there should be no way to get a value in between. I think we all know that is false, thus his math is either false or irrelevant. I suspect because he's missing a few steps...


I'm not by any means suggesting that these systems aren't flawed in some way, but not necessarily for the reasons illustrated in the article in question.
____________________________
King Nobby wrote:
More words please
#17 May 20 2009 at 1:57 PM Rating: Decent
Lunatic
******
30,086 posts

Or do you really think the final output of the machine can either show .06% or .12% and nothing in between. If whomever did that math was correct, there should be no way to get a value in between.


No.

No math classes required for what you do, either, I guess.

____________________________
Disclaimer:

To make a long story short, I don't take any responsibility for anything I post here. It's not news, it's not truth, it's not serious. It's parody. It's satire. It's bitter. It's angsty. Your mother's a *****. You like to jack off dogs. That's right, you heard me. You like to grab that dog by the bone and rub it like a ski pole. Your dad? Gay. Your priest? Straight. **** off and let me post. It's not true, it's all in good fun. Now go away.

#18 May 20 2009 at 3:02 PM Rating: Decent
Encyclopedia
******
35,568 posts
Smasharoo wrote:

Or do you really think the final output of the machine can either show .06% or .12% and nothing in between. If whomever did that math was correct, there should be no way to get a value in between.


No.


So you agree that the output is displayed in granularity smaller than .06% increments? Cause that was the point I was making. Since that is the case, the fact that the measurements are rounded into buckets of that approximate granularity before being "averaged" together does not automatically mean that the system cannot correctly detect BAC levels in between those two points.


But hey. I just do IT work on a floor full of test equipment. I can't possibly have any understanding of how such systems might work. We don't do statistical yield analysis or use algorithms to efficiently minimize the number of tests done out of a set while still maintaining a high accuracy rate on the set being tested. Oh wait! We do. And I even configure such processes as one of my many areas of expertise.

There are principles in data gathering which allow you to gain very very accurate information about a set of data while not having to accurately measure each individual unit in the set. While my specific knowledge relates to determining the frequency and accuracy of package tests needed to ensure a target accuracy on the whole set of packages is reached, the same exact principles apply to any measurement methodology in which a set of measurements are taken over time and then combined into a single result.
____________________________
King Nobby wrote:
More words please
#19 May 20 2009 at 3:59 PM Rating: Good
***
3,053 posts
gbaji wrote:
But hey. I just do IT work on a floor full of test equipment.


Sorry but the test equipment you use needs to be sent out to be calibrated and isn't likely to be of the quality needed for scientific testing.

When I was kid, it was like comparing General Radio noise meters to Brüel & Kjær from Denmark. My father only would use equipment from B&K as the General Radio meters were so inadequate as to be useless for his purpose. Then he was on the forefront of Acoustics for housing and airport noise abatement and nothing else would do.

These days there are many more brands to choose from, but if you want the best results from your testing equipment, you best be ready to pay for it and make sure you have it re calibrated each month by qualified technician. (My ex was the best o-scope technician, and could calibrate more equipment faster then anyone else in the shop, at Ft Meade until he started to live full time as woman.)
____________________________
In the place of a Dark Lord you would have a Queen! Not dark but beautiful and terrible as the Morn! Treacherous as the Seas! Stronger than the foundations of the Earth! All shall love me and despair! -ElneClare

This Post is written in Elnese, If it was an actual Post, it would make sense.
#20 May 20 2009 at 4:10 PM Rating: Decent
Lunatic
******
30,086 posts

So you agree that the output is displayed in granularity smaller than .06% increments? Cause that was the point I was making.


Yes, I know. The problem is you didn't understand the analysis you were critiquing. Because....you don't grasp math. Not my fault, go to school if it bothers you.


But hey. I just do IT work on a floor full of test equipment. I can't possibly have any understanding of how such systems might work. We don't do statistical yield analysis or use algorithms to efficiently minimize the number of tests done out of a set while still maintaining a high accuracy rate on the set being tested. Oh wait! We do. And I even configure such processes as one of my many areas of expertise.

There are principles in data gathering which allow you to gain very very accurate information about a set of data while not having to accurately measure each individual unit in the set. While my specific knowledge relates to determining the frequency and accuracy of package tests needed to ensure a target accuracy on the whole set of packages is reached, the same exact principles apply to any measurement methodology in which a set of measurements are taken over time and then combined into a single result.


Hahahahahahahahaha. Your specific knowledge involves following directions. You understand as much of the math involved as a bus driver understands how to mine iron and forge engine parts.

For fuck sake, man, why so insecure about it? I'm sure you're better at math than the average fast food worker, I don't doubt you can make change or whatever, but it's beyond painful obvious that your education in the subject ceased at about linear algebra. I'm being generous, you're welcome.

____________________________
Disclaimer:

To make a long story short, I don't take any responsibility for anything I post here. It's not news, it's not truth, it's not serious. It's parody. It's satire. It's bitter. It's angsty. Your mother's a *****. You like to jack off dogs. That's right, you heard me. You like to grab that dog by the bone and rub it like a ski pole. Your dad? Gay. Your priest? Straight. **** off and let me post. It's not true, it's all in good fun. Now go away.

#21 May 20 2009 at 4:46 PM Rating: Decent
Encyclopedia
******
35,568 posts
Mistress ElneClare wrote:
gbaji wrote:
But hey. I just do IT work on a floor full of test equipment.


Sorry but the test equipment you use needs to be sent out to be calibrated and isn't likely to be of the quality needed for scientific testing.


I initially though I'd be snarky with my response, but I'll assume you honestly don't know what equipment I'm talking about.

We test SOC packages. That stands for "system on a chip". These are basically computer chips used in a variety of communications equipment. The testers we use cost upwards of a million dollars apiece, have counterweights weighing around a ton, and most definitely are not "sent out" for calibration. We have our own in-house maintenance staff who, among other things, do regular calibrations every 30 days. Full NIST cals are done on site (with specially manufactured and calibrated robots) every 6 months on each system.

We specifically use a mix of mostly Teradyne Ultraflex and Verigy V93000 testers. We also have an assortment of wafer probers in use (Accretech and Seiko-Epson IIRC), so we can actually probe raw wafers before they are cut up and put into a package.

Outside of clean rooms at fabrication plants, there just isn't much more precise "scientific testing" you can do.


If you'd like, I could go into detail about how we use yield analysis software to produce accurate sample set results while only testing a small fraction of the whole sample. Sometimes, methods that don't appear to be very accurate to the lay observer are actually mathematically provable to be very very accurate. I'm not going to assume that the methods used in the Breathalyzer must be producing inaccurate results, just because a vague description of the methods seem like they should be.
____________________________
King Nobby wrote:
More words please
#22 May 20 2009 at 4:55 PM Rating: Decent
Encyclopedia
******
35,568 posts
Smasharoo wrote:

So you agree that the output is displayed in granularity smaller than .06% increments? Cause that was the point I was making.


Yes, I know. The problem is you didn't understand the analysis you were critiquing. Because....you don't grasp math. Not my fault, go to school if it bothers you.


I don't understand that a set of numbers in intervals of X can produce a result that is accurate within a margin smaller than X? Really? Cause that's exactly what I did understand and explain.


That's not hard math Smash. It's basic number theory. Take 3 and divide it by 2. Both of those numbers are whole numbers with an "interval" of one. Yet, when we divide them, we get a number not within the set of whole numbers, don't we? It's like magic! We've just doubled the granularity of our number by the process of simple division. We must be mathematical geniuses or something. And if we do this on a set of numbers (which is what the article described) and average them repeatedly (which the article described), we will get a resulting granularity that is much much finer than that of the original measurements.


That's the part I comprehended immediately. So what the heck is your problem? You're angry because I correctly identified what was going on? But I'm the one who's insecure? Why are you even posting in this thread? Do you have something to contribute?


Sheesh. Lay off the coffee there buddy...e
____________________________
King Nobby wrote:
More words please
#23 May 20 2009 at 5:17 PM Rating: Excellent
Avatar
******
29,919 posts
Some background on how the machine works:
http://www.nj-dmv-dwi.com/parts/breathtest.html
Should be noted that is a potentially biased site, but their description of the basic mechanics seems accurate based on what I know.

There is also a picture of the unit. These are apperently rather old, and likely do not have much in the way of processor horsepower. I suspect they deliberatly limited the range of possible values to attempt to increase unit speed.

I'll see if I can find the source code somwwhere, but they seem to be holding it pretty close to the vest.
____________________________
Arch Duke Kaolian Drachensborn, lvl 95 Ranger, Unrest Server
Tech support forum | FAQ (Support) | Mobile Zam: http://m.zam.com (Premium only)
Forum Rules
#24 May 20 2009 at 5:40 PM Rating: Decent
Encyclopedia
******
35,568 posts
Oh heck!

You realize that this is from a case in 2003, right? Are we debating something that's irrelevant? Or is this still going on in NJ?
____________________________
King Nobby wrote:
More words please
#25 May 20 2009 at 5:45 PM Rating: Decent
Lunatic
******
30,086 posts

That's the part I comprehended immediately. So what the heck is your problem? You're angry because I correctly identified what was going on?


You didn't correctly identify what was going on. You wrongly assumed something was being argued that wasn't. Because you either didn't understand the math, or can't read. Having read thousands of your posts, it's really a toss up, but I'd have to say that your reading comprehension is superior to your math ability, which really doesn't speak well for that latter one.

Also, I'm not angry. I don't think I've ever been angry at anything you post. I frequently laugh at the idea that people take you seriously, but for you to move me to anger would require some level of accurate insight on your part that I was uncomfortable with. Joph's made me angry before, you, as of yet, have not.

____________________________
Disclaimer:

To make a long story short, I don't take any responsibility for anything I post here. It's not news, it's not truth, it's not serious. It's parody. It's satire. It's bitter. It's angsty. Your mother's a *****. You like to jack off dogs. That's right, you heard me. You like to grab that dog by the bone and rub it like a ski pole. Your dad? Gay. Your priest? Straight. **** off and let me post. It's not true, it's all in good fun. Now go away.

#26 May 20 2009 at 7:54 PM Rating: Excellent
Avatar
******
29,919 posts
gbaji wrote:
Oh heck!

You realize that this is from a case in 2003, right? Are we debating something that's irrelevant? Or is this still going on in NJ?


Well there are still thousands of these machines running around the country, so i'd say yeah, pretty relevent.
____________________________
Arch Duke Kaolian Drachensborn, lvl 95 Ranger, Unrest Server
Tech support forum | FAQ (Support) | Mobile Zam: http://m.zam.com (Premium only)
Forum Rules
« Previous 1 2
Reply To Thread

Colors Smileys Quote OriginalQuote Checked Help

 

Recent Visitors: 303 All times are in CST
Anonymous Guests (303)