One of the most fascinating aspects of the modern welfare state is how it is not just distribution between the wealthy and the poor, but also between generations. Working-age adults pay most federal taxes, and those are increasingly used to pay for programs for the elderly. To be more precise, 20% of the federal budget goes to cover Social Security checks, 16% to Medicare and 4% to Medicaid services for the elderly. As a comparison the rest of safety net programs (SNAP, TANF...) take 13% of the federal budget. We are redistributing between generations, not just between income levels.
Of course, seniors have paid into the system - we pay social security and Medicare taxes all our working lives, after all. They are right there on the paycheck. That´s the theory; in practice it turns out that most seniors actually have paid much less into the system that what they get back from it (via Kevin Drum):
A couple of comments. First, the whole paying a specific tax to cover the costs of an specific service that we will be receiving in the future is largely a fiction. Federal programs are, essentially, pay-as-you-go systems: current workers are paying for the benefits of current beneficiaries, and they system relies on having more workers than recipients at any given time to cover its cost.
Second, baby boomers have a really sweet deal with this arrangement, specially regarding health insurance costs. This is worth keeping in mind when you hear politicians promising to keep Medicare intact for those over 55 while opposing the extension of health insurance coverage under the Affordable Care Act.