Person Ian Whiffin Trial 1Trial 2Ian Whiffin is a Cellebrite digital-forensics expert who testified in Trial 1 about Jennifer McCabe’s Google-search timing and in Trial 2 about that issue and John O’Keefe’s phone data. ← All People
🔬 Expert Witness · Cellebrite

Ian Whiffin

Trial 1Trial 2
1,269 lines 10 proceedings 2 trials
Courtroom still of Ian Whiffin.

About

Ian Whiffin is a forensic analyst with Cellebrite, a leading provider of digital intelligence tools used by law enforcement. He was retained by the prosecution to analyze data extracted from Jennifer McCabe's iPhone and John O'Keefe's phone. His testimony centered on two disputed questions: when McCabe conducted the 'how long to die in cold' Google search, and what O'Keefe's phone data — including location, step counts, battery temperature, and pocket state — reveals about his movements and condition during the hours between his arrival at 34 Fairview Road and when his body was discovered.

Key Points

  • Whiffin's central finding in Trial 1 was that the 'how long to die in cold' search on McCabe's phone occurred at 6:23 a.m., not at 2:27 a.m. as the defense contended — explaining that the 2:27 a.m. timestamp in the BrowserState database reflected when a browser tab was last focused, not when the search was conducted, a distinction he demonstrated live in court.
  • To rule out the possibility that the incriminating 2:27 a.m. record had been manually deleted and replaced by a later timestamp, Whiffin walked through WAL file analysis showing the BrowserState record persisted until at least 10 p.m. on January 31 — days after the search — making user deletion impossible within the relevant timeframe.
  • In Trial 2, Whiffin combined location, health, battery-temperature, and Doppler records into a phone-data timeline: 36 steps were recorded between 12:31:56 and 12:32:16 a.m.; no further health activity was recorded until 6:04 a.m.; the battery-temperature series had a records gap; and 26,500 Doppler checks recorded a camera obstruction from 12:33 to 6:02 a.m. He acknowledged that the location radius could encompass different positions and that Doppler did not necessarily show a literal pocket. Whiffin's stated opinion was that the device never moved far from the flagpole; the Commonwealth may use that device conclusion to support its theory that O'Keefe was outside.
  • During Trial 2 redirect, Whiffin conducted a live demonstration on an iOS 15.2.1 device using Cellebrite's ARTX tool to show the jury exactly how a BrowserState tab focus timestamp differs from a search timestamp, directly countering defense challenges about the methodology underlying his 6:23 a.m. conclusion.
  • Whiffin also testified that the absence of the McCabe searches from the main Safari history database — combined with the absence of any deleted records from that database — indicated the pages never finished loading, which is why they left traces only in BrowserState and plist files rather than in the primary history record.

Trial Record (10)

Trial 1 First Criminal Trial Apr 29, 2024 – Jul 1, 2024 4 proceedings

Day 26

Direct Ian Whiffin Adam Lally 3 highlights 183 lines spoken
Summary

Cellebrite expert Ian Whiffin testified that a 2:27 browser-state timestamp showed tab focus, not the timing of the cold-related searches, and described his opinion that the records were not user-deleted.

Highlights (3)
Quote

“So these particular two searches were conducted at 6:23:51 and 6:24:18, respectively. They were searched using the search bar that's built into Safari. The fact that they didn't exist within history DB, and that there were no deleted records from history.DB leads me to believe that they never successfully loaded.”

Whiffin gave the technical basis for placing the searches later than the browser-state timestamp.

Open in transcript → Watch this moment ▶
Quote

“So in conclusion, I determined that the tab that was used was focused at 22740. So the tab was opened at that time, at which point it was being used to show Ozone Basketball and Hockomock Sports websites.”

This was his central distinction between a tab-focus timestamp and the time of a search.

Open in transcript → Watch this moment ▶
Quote

“We recognize that this time stamp could be misleading. Regardless of how we label that time stamp, the very fact that a time stamp is there, we feel would be, well, potentially misrepresented.”

Whiffin testified that Cellebrite removed the timestamp from this information because it could be inaccurate.

Open in transcript → Watch this moment ▶
Cross Ian Whiffin David Yannetti 2 highlights 38 lines spoken
Summary

Defense counsel tested Ian Whiffin's iOS-version comparison, the recovery limits of a deleted browser-state record, and safeguards against alteration of extracted phone data.

Highlights (2)
Quote

“It's potentially possible, but would require a large amount of knowledge and skill to do in a way that can't be detected.”

Whiffin qualified his answer about whether extracted data could be altered and renumbered without detection.

Open in transcript → Watch this moment ▶
Redirect Ian Whiffin Adam Lally 5 highlights 4 lines spoken
Summary

Ian Whiffin defended his browser-data analysis and concluded that the two Google searches occurred at 6:23 and 6:24 on the morning of the 29th.

Highlights (5)
Quote

“The fact that there's no missing records indicates it was never written into that database, and therefore, could not have been selectively deleted.”

Whiffin used the absence of missing records to explain his opinion on selective deletion.

Open in transcript → Watch this moment ▶
Quote

“I'm of no doubt that the only time those two searches were conducted was at 6:23 and 6:24 on the morning of the 29th.”

Whiffin stated his conclusion about the timing of the two searches.

Open in transcript → Watch this moment ▶
Show 1 more

Trial 2 Retrial Apr 22, 2025 – Jun 18, 2025 6 proceedings

Day 5

Direct Ian Whiffin Hank Brennan 4 highlights 345 lines spoken
Summary

Ian Whiffin testified about disputed Safari timestamps and gave opinions from phone data concerning John O'Keefe's phone location and activity overnight.

Highlights (4)
Quote

“discovered that it was actually the timestamp that the tab within the browser was brought into focus and had no relevance to when the actual web query had been made.”

States Whiffin's explanation for the disputed 2:27:40 timestamp.

Open in transcript → Watch this moment ▶
Quote

“Based on the totality of all of the information that we've described, my opinion is that the device never moved far away from the flag pole.”

States Whiffin's ultimate opinion about the phone's location overnight.

Open in transcript → Watch this moment ▶
Cross Ian Whiffin Robert Alessi 2 highlights 61 lines spoken
Summary

Whiffin's cross-examination focused on omissions and limits in his phone-data timeline, including message identification, location accuracy, and pocket-state records.

Highlights (2)
Quote

“Correct. The location latitude/longitude was moving westerly, but at the same time the accuracy was increasing, so it didn't intrinsically prove that the device was moving.”

Whiffin qualified the inference that location records established actual movement.

Open in transcript → Watch this moment ▶

Day 6

Cross Ian Whiffin Robert Alessi 4 highlights 375 lines spoken
Summary

Whiffin's cross-examination examined limits in his phone-location, battery-temperature, extraction-integrity, and disputed-timestamp opinions.

Highlights (4)
Quote

“I can't take a temperature reading and make a determination about a GPS location based on the temperature reading.”

He limited what battery-temperature information alone could establish about location.

Open in transcript → Watch this moment ▶
Quote

“The hash value matches. But because I didn't do the extraction, I'm unable to actually validate that that was an original hash and hadn't been modified.”

He described a limitation in validating the extraction from Jen McCabe's phone.

Open in transcript → Watch this moment ▶
Quote

“I have an idea of how it occurred, but I've not been able to replicate it. So my idea is unsubstantiated.”

He acknowledged that his explanation for the deletion mechanism had not been replicated.

Open in transcript → Watch this moment ▶
Redirect Ian Whiffin Hank Brennan 3 highlights 203 lines spoken
Summary

Whiffin defended his independent phone-data analysis, qualified the limits of location records, and addressed extraction integrity and the disputed Safari-search timestamp.

Highlights (3)
Quote

“No, it's difficult to give an answer to a high degree of scientific certainty based on the sporadic nature of the records that night.”

Qualifies the limits of his location-data opinion.

Open in transcript → Watch this moment ▶
Quote

“The tools are very good at surfacing data, but I believe it's up to the examiner to understand what that data means and to provide context to the information which the tool itself can't give.”

Explains his approach to interpreting forensic software output.

Open in transcript → Watch this moment ▶
Quote

“Aside from being unethical to change the data in that way, this is an artifact that is easily validated by any examiner and if I was to tamper with it for the purposes of changing the outcome of a case, it would be detected by all of our customers immediately and would destroy the reputation of Cellebrite, which I've got no intention of doing.”

Responds to questions about whether software data could be altered to favor law enforcement.

Open in transcript → Watch this moment ▶
Redirect Ian Whiffin Hank Brennan 4 highlights 44 lines spoken
Summary

Whiffin used a chart and live Safari demonstration to explain his location-data and timestamp interpretations.

Highlights (4)
Quote

“So it demonstrates the fact that the phone is constantly refining the location data or the accuracy of the location data even though it's using the same central point — the latitude and longitude — as the reference point. It doesn't necessarily mean the device had to move.”

Explains the expert's interpretation of changing location-accuracy circles without inferred movement.

Open in transcript → Watch this moment ▶
Quote

“And the time here still says 1410 because that's the time that I first loaded the tab. The fact that I navigated — the fact that I minimized and reopened Safari — bears no relevance to this timestamp. It is purely the timestamp that that tab was created or brought back into focus.”

States the conclusion illustrated by the live Safari demonstration.

Open in transcript → Watch this moment ▶
Quote

“Purely because we determined it was unreliable to use as a time that the page was last viewed.”

Gives Whiffin's explanation for why Cellebrite removed that timestamp treatment.

Open in transcript → Watch this moment ▶
Key Moment

Whiffin conducted a live Safari demonstration and testified that the displayed timestamp reflected when a tab was created or brought into focus, not when a later search occurred.

Open in transcript → Watch this moment ▶

Locations Touched By This Testimony