最初,漢族的姓、氏是有區別的。原始的姓是母系氏族公社的族號。「姓」字就是由「女」和「生」字合成。許多古姓都有「女」旁,如姜、姚、姬等。氏是姓的分支。由於子孫繁衍,一族分成若干支,散居各地,每一支都有一個特殊的記號作為標誌,這就是氏。後來,姓和氏就沒有多少差別了。
姓氏的來源,大致有以下幾種情況:
1以官職為姓,如司馬、上官、侯、帥、尉等;2以職業和技藝為姓,如做陶器的姓「陶」,管倉庫的姓「倉」,做買賣的姓「賈」;3以祖先的名字、爵位為姓,如孟孫、叔孫、王孫、公孫等;4以封國、封地為姓,如齊、魯、吳、楚等;5以原始崇拜物為姓,如馬、牛、羊、龍等;6以居住地方的特徵為姓,如東郭、西門、楊、柳,李等;7以數字為姓,如伍、陸、萬等。
此外還有些複姓如長孫、賀蘭、呼延,則是由少數民族語音譯而成。宋朝人編寫的《百家姓》內收入單姓共408個,複姓共76個。近代出版的《中國人名大辭典》,已收入單複姓共4129個。常用姓氏不過200個左右,最常見的單姓只有100個,而以李、王、張、劉、陳、楊、趙、黃、周、吳、徐、孫、胡、朱、高、林、伍、郭、馬為姓的人已佔全國人口一半以上。
中國古人的姓名比現代人要複雜些,大體有姓、名、字、號四項。名是嬰兒出生後由父親取的。字是男子二十歲成年舉行冠禮,女子十五歲舉行笄禮時取的,是人的正式稱謂。號,是有一定名望和文化的人,為表示自己的思想志趣而取的。如陶潛,號五柳先生;歐陽修,號醉翁,晚年又號六一居士;陸游,號放翁。
現代人命名沒有古代人那麼講究,除少數人有字、號外,普通人一般只有一個名字, 並且多為一字或兩字。名反映了漢族文化特徵和心理特徵。如有的用「富、貴、財、祿」等字,希望發家致富;有的用「康、健、松、壽」等字,希望健康長壽;有的用「棟、傑、俊、才」等字,希望發達成材。男子用動物命名時,多用「鵬、龍、虎、豹」,象徵勇猛、威武、吉祥,以植物命名則用「松、槐、桐、柏」等字,象徵雄偉挺拔、富有生命力;女子相應用「鳳、鶯、鸞、燕」等字和「蘭、菊、梅、杏」等字,希望貌美、溫柔、賢惠。