محمد ابن حنفیه از فرزندان امام علی (ع) است که مادرش خوله حنفیه دختر جعفر بن قیس است و به همین جهت به محمد بن حنفیه مشهور شده است. در بعضی روایات نقل شده که پیامبر اکرم (ص)، امیرالمؤمنین را به میلاد محمد بشارت داده و نام و کنیه خود را به او عطا نمودند. (کنیه محمد، ابوالقاسم است.) محمد در زمان حکومت عمر ابن خطاب متولد شد و در ایام حکومت عبدالملک بن مروان وفات نمود. سن او را شصت و پنج سال گفته اند و لیکن محل وفات او را بعضی طائف و بعضی مدینه نقل نموده اند و او را در بقیع دفن کردند.
فرقه کیسانیه او را امام می دانستند و او را مهدی آخرالزمان می خواندند و اعتقاد داشتند که محمد زنده است و در کوههای رضوی که در نزدیک مدینه است اقامت دارد، تا هنگامی که خروج کند ولی این مذهب منقرض گشته و از بین رفته است. محمد بن حنیفه مردی عالم، شجاع، نیرومند، قوی بوده و رشادت های او در جنگ های جمل و صفین مشهور است و امیرالمؤمنین او را بسیار دوست داشتند. نقل شده که هنگامی که چندین زره به حضور امیرالمؤمنین آوردند، یکی از آنها از اندازه قامت انسان بلندتر بود. حضرت فرمود تا مقداری از دامان آن زره را قطع کنند. محمد دامان زره را جمع کرد و از آنجا که امیرالمؤمنین علامت نهاده بود، با نیروی دست از هم درید مانند آنکه حریری را پاره می کند. محمد بن حنیفه بعد از شهادت امیرالمؤمنین (ع) در خدمت برادران بزرگوار خود امام حسن مجتبی (ع) و سپس امام حسین (ع) بود و به علت معلولیت و فلج دستان نتوانست در حادثه کربلا حاضر شود.