"I made a huge error," Alex Schwazer said. "And I can only repeat, I'm sorry."
Schwazer said he flew alone to Turkey in September with 1,500 euros (now $1,850) to buy the blood booster at a pharmacy. He said he disguised it in a box of vitamins in a refrigerator at Kostner's home in Germany, where he was staying in July.
Schwazer had hoped to replicate his feat in the 50-kilometre event in London but was tossed from the games Monday after testing positive.
At a news conference in Bolzano in northern Italy, Schwazer wept and at one point buried his face in his hands. His manager and a lawyer participated in the news conference.
Schwazer said he learned how to use EPO through the Internet and injected it daily in a bathroom to prevent Kostner and his parents from knowing what he was doing.
"I did everything possible not to involve anyone else," he said.
Schwazer said he felt pressured leading to the Olympics by the "expectations that I had to dominate even more than before."
"I couldn't say no to this decision to do doping for the 2012 Olympics," he said.
He denied getting the performance-enforcer from Michele Ferrari, the Italian doctor who in 2002 was banned by the Italian Cycling Federation and who also was a consulting physician for cycling champion Lance Armstrong. Ferrari, also given a lifetime ban by the U.S. Anti-Doping Agency, said last week on his website he was not guilty of the charges.
Schwazer said he consulted with Ferrari "five or six times" but only for "technical advice" about training and he was last in touch with the physician in early 2011.
Schwazer said he began EPO injections the day after a July 13 doping test. He said he kept up the daily injections and called this period the "most difficult of my life." He said that apart from this time he never was involved in doping.
"With doping, they say you get stronger, but for me, psychologically, it was the hardest," he said.
He said he injected himself for the last time on July 29. He recalled that the next day the bell rang at home in Italy, where he had gone for a few days because he needed to pick up his Italian national health card before he was to travel to London.
"I knew it was the anti-doping officials," he said. "I didn't have the strength to tell my mother to not open to door or to say I wasn't there."
He insisted that he kept Kostner, his longtime girlfriend, in the dark about the doping until after his call from London on Monday to tell him he had tested positive. He said he put the EPO in a box of vitamins in the refrigerator to deceive Kostner.
"For me, it wasn't easy to tell Carolina that in the refrigerator, it wasn't vitamin B-12 but EPO. I'm really ashamed.
He added that since the doping news broke, Kostner has been supportive, "not leaving me alone for a moment."
Schwazer said he chose not to race the 20-kilometre walk at this Olympics because "I was bad off, mentally." He said he was beginning to detest his sport, and the three-hour morning workouts each day.
"The race walk was making me nauseous," he said. "I couldn't stand the training anymore."
"My girlfriend loves skating," he added. "I do the race work because I'm good at it, but I don't like working at it. The difference between my relationship with the sport and Carolina's is all there."
He said he welcomed any retesting of blood samples taken during the 2008 Beijing Olympics, where he won the 50-kilometre walk.
Like many Italian athletes, Schwazer struggled for funding. He was sponsored by one of Italy's police forces, the paramilitary Carabinieri, which he joined when he was 18. Schwazer said he would turn in his police badge and gun on Thursday to the Carabinieri.