Click here for a copy of the amended indictment in the Barry Bonds case. It was amended on February 10, 2011.
The document sets out 4 counts of perjury and 1 count of obstruction of justice. Three of the 4 perjury counts relate Bonds denying he took steroids or HGH.
One of the counts (Count 2), however, refers to Bonds' denial that Anderson injected him. So this count, unlike the others, doesn't require that the prosecution show that Bonds was injected with steroids or HGH and that he knowingly lied about it. The prosecution just needs to show that Bonds was simply injected (who cares with what) and that he knowingly lied about it.
Charge of Perjury: Lied vs. Knowingly Lied
For the offence of perjury, the prosecution must prove not only that Bonds lied, but that he knowingly lied. This distinction between "lied" and "knowingly lied" is particularly key on the steroid counts.
To prove the steroid counts, the prosecution will need to show that Bonds took steroids and that he knowingly lied when he claimed that he did not. Even if prosecutors can establish that Bonds took steroids, Bonds cannot be convicted of perjury if he was unaware that the substances he was taking were in fact steroids. So maybe it was a lie that he took steroids because there is proof it was steroids; still that's not enough - it needs to be shown that Bonds knew he was taking steroids and he lied about it.
This is why Bonds has said he thought he was being given flaxseed oil when it was actually steroids (the clear and cream). He's saying he didn't knowingly take steroids.
For this reason, Count 2 may be less challenging to establish in theory (assuming there is good evidence), since the prosecution only needs to show Bonds knew he was lying when he said he wasn't injected; whether he took steroids or not won't matter on this count.