上古八大姓是指姬、姜、姒、嬴、妘、妫、姚、姞。另一说则是姬、姜、姒、嬴、妘、妫、姚、妊。实际上先秦时代的姓氏并不只有八个,比较古老且著名的姓还有商代王室的子姓,楚国公室内的芈姓等。姓氏的起源可以追溯到人类的氏族社会时期,姓者,统其祖考之所自出;氏者,别其子孙之所自分;先秦时代的姓和氏是不同的,姓源自古老的氏族部落,同姓之人是有着相同的祖先,存在血缘关系,故同姓之人不能通婚。
姓氏的起源可以追溯到人类原始社会的母系氏族制度时期,所以中国的许多古姓都是女字旁或底。氏则由姓分化而来,有一定地位的男性才有氏,氏主要来自封地或者官职的名称,一个人的姓无法变更,氏则可以根据不同情况改变。