Heather,
Whitebox is when you have access to the code. You might find a boundary case. For example, suppose the code has "if (sum > 0) {}" in it. Whitebox testing would have you checking the 0 case.
Blackbox is when you don't have access to the code. An independent tester might think about the code differently or find a case the code doesn't cover at all.