“牛角挂书”的主人公是隋朝末年农民起义中的瓦岗军后期领袖李密。李密主上本是北周和隋朝贵族,而到了他这一代时,已经衰落了。凭借着祖上的荫庇,李密大概在15岁的时候就得到了一个武职,在隋炀帝宫里当差。有一天,隋炀帝看到李密后,觉得这少年天性太活跃,怕他在宫里惹事,就将他赶出宫去。
于是李密回家放牛为生。不甘心就此潦倒一生的李密,一边放牛一边发奋读书。一天李密听说缑山住着一个叫包恺的饱学之士,于是刘骑上一头牛前去求教,牛背上铺着用薄草编的垫子,牛角上挂着一部《汉书》,李密一边赶路一边读《汉书》。当时的越国公杨素骑着马在李密后面赶路,看到少年如此用功,便悄悄勒紧马缰在后面跟了一段。杨素发现李密自始至终读得十分投入,便忍不住赞叹道:“谁家的少年如此刻苦!”李密在宫中当差时见到过越国公,于是赶紧从牛背上跳下来拜见。杨素问李密在读什么,李密告诉他自己正在读《汉书》。
李密擅长谋划,文武双全,志向远大,常常以救世济民为己任。开皇中,袭爵蒲山公。于是散发家产,救济亲朋好友,收养门客,礼遇贤才,从不吝惜资财。后又折兵读书,尤其喜好兵书,常能背诵。从师国子助教包恺,听他讲授《史记》、《汉书》,精神振奋,忘了疲倦。包恺的其他弟子,都在他之下。李密的曾祖父李弼,曾经在关陇集团命悬一线的开基之战——沙苑之战中,居功至伟,因此,成为西魏八柱国之一,赐姓徒何氏,并成为北周太师、魏国公。李密的祖父李耀,为北周太保、邢国公。李密的父亲李宽,为隋朝上柱国、蒲山郡公。