The proper name for the # sign is 'octothorpe'; however, the name "pound sign" has a dual sided history. The common and historically ascribed "libra pondo" from Roman times (libra meaning 'scales' and pondo coming from the verb 'pendere' meaning 'to weigh') meant "a pound in weight". Interestingly, both libra and pondo, individually, came to mean the same thing: a pound in weight. And it's from these two roots that # gets both its form and oldest name.
While 'libra' became commonly abbreviated in written form as 'lb' to signify weight, 'pondo' was subject to a more oral transition. "Pondo" (from Latin), became the Old English 'pund' and later, through the Middle Ages, to the current 'pound'. Thus, libra and pondo were reunited under a single name and meaning. And the "pound sign" # was born of a combination of 'lb' and ~, eventually truncated to the # we know now.
Its original name, the 'octothorpe', remains elusive in its origins, to this day. (aside from the obvious 'octo' which means eight, referencing the eight points of the symbol)
English