diff --git a/cmd/helm/dependency_build.go b/cmd/helm/dependency_build.go
index c8d22e7cfa21726b377b40dd01b9f2396a17f0f8..67fe7cf267262ac4601f0f822ef333b79a8bfd59 100644
--- a/cmd/helm/dependency_build.go
+++ b/cmd/helm/dependency_build.go
@@ -26,7 +26,7 @@ import (
 )
 
 const dependencyBuildDesc = `
-Build out the charts/ directory from the requirements.lock file.
+Build out the charts/ directory from the Chart.lock file.
 
 Build is used to reconstruct a chart's dependencies to the state specified in
 the lock file. This will not re-negotiate dependencies, as 'helm dependency update'
@@ -50,7 +50,7 @@ func newDependencyBuildCmd(out io.Writer) *cobra.Command {
 
 	cmd := &cobra.Command{
 		Use:   "build CHART",
-		Short: "rebuild the charts/ directory based on the requirements.lock file",
+		Short: "rebuild the charts/ directory based on the Chart.lock file",
 		Long:  dependencyBuildDesc,
 		Args:  require.MaximumNArgs(1),
 		RunE: func(cmd *cobra.Command, args []string) error {
diff --git a/cmd/helm/dependency_build_test.go b/cmd/helm/dependency_build_test.go
index ff740a1f2d9c28f486f947fbaa0557bd542d6702..5c2f004fb586a9940a966997c7da47d4b1e3d585 100644
--- a/cmd/helm/dependency_build_test.go
+++ b/cmd/helm/dependency_build_test.go
@@ -64,7 +64,7 @@ func TestDependencyBuildCmd(t *testing.T) {
 
 	// In the second pass, we want to remove the chart's request dependency,
 	// then see if it restores from the lock.
-	lockfile := hh.Path(chartname, "requirements.lock")
+	lockfile := hh.Path(chartname, "Chart.lock")
 	if _, err := os.Stat(lockfile); err != nil {
 		t.Fatal(err)
 	}
diff --git a/cmd/helm/testdata/testcharts/reqtest/requirements.lock b/cmd/helm/testdata/testcharts/reqtest/Chart.lock
similarity index 100%
rename from cmd/helm/testdata/testcharts/reqtest/requirements.lock
rename to cmd/helm/testdata/testcharts/reqtest/Chart.lock
diff --git a/pkg/chart/chart.go b/pkg/chart/chart.go
index c78ad60fbd6514100209c5843c8392efd46fafd7..d314104da2e063a6df7e052cc6416372f0ad8cd3 100644
--- a/pkg/chart/chart.go
+++ b/pkg/chart/chart.go
@@ -20,8 +20,8 @@ package chart
 type Chart struct {
 	// Metadata is the contents of the Chartfile.
 	Metadata *Metadata
-	// RequirementsLock is the contents of requirements.lock.
-	RequirementsLock *RequirementsLock
+	// LocK is the contents of Chart.lock.
+	Lock *Lock
 	// Templates for this chart.
 	Templates []*File
 	// TODO Delete RawValues after unit tests for `create` are refactored.
diff --git a/pkg/chart/loader/load.go b/pkg/chart/loader/load.go
index 4075ed6fa13eb29fb6ccb594b912c60e08b5b4a7..855d92e578c785ae39dfcda0fab2f136bec401a6 100644
--- a/pkg/chart/loader/load.go
+++ b/pkg/chart/loader/load.go
@@ -77,10 +77,10 @@ func LoadFiles(files []*BufferedFile) (*chart.Chart, error) {
 			if err := yaml.Unmarshal(f.Data, c.Metadata); err != nil {
 				return c, errors.Wrap(err, "cannot load Chart.yaml")
 			}
-		case f.Name == "requirements.lock":
-			c.RequirementsLock = new(chart.RequirementsLock)
-			if err := yaml.Unmarshal(f.Data, &c.RequirementsLock); err != nil {
-				return c, errors.Wrap(err, "cannot load requirements.lock")
+		case f.Name == "Chart.lock":
+			c.Lock = new(chart.Lock)
+			if err := yaml.Unmarshal(f.Data, &c.Lock); err != nil {
+				return c, errors.Wrap(err, "cannot load Chart.lock")
 			}
 		case f.Name == "values.yaml":
 			c.Values = make(map[string]interface{})
diff --git a/pkg/chart/loader/load_test.go b/pkg/chart/loader/load_test.go
index 630da5cd475f447fd397c25d218cd8417b057806..6fda07ceb670bd17f182ef2cab7c581b33ae07bf 100644
--- a/pkg/chart/loader/load_test.go
+++ b/pkg/chart/loader/load_test.go
@@ -248,8 +248,8 @@ func verifyChartFileAndTemplate(t *testing.T, c *chart.Chart, name string) {
 	if len(c.Metadata.Requirements) != 2 {
 		t.Fatalf("Expected 2 Requirements.Dependency, got %d", len(c.Metadata.Requirements))
 	}
-	if len(c.RequirementsLock.Dependencies) != 2 {
-		t.Fatalf("Expected 2 RequirementsLock.Dependency, got %d", len(c.RequirementsLock.Dependencies))
+	if len(c.Lock.Dependencies) != 2 {
+		t.Fatalf("Expected 2 Lock.Dependency, got %d", len(c.Lock.Dependencies))
 	}
 
 	for _, dep := range c.Dependencies() {
diff --git a/pkg/chart/loader/testdata/frobnitz-1.2.3.tgz b/pkg/chart/loader/testdata/frobnitz-1.2.3.tgz
index a8ba8ec6f4838980e28e67d8f619cc097ccd03f5..983820e0619f2eab82530fd6b4d35fd198c338c1 100644
Binary files a/pkg/chart/loader/testdata/frobnitz-1.2.3.tgz and b/pkg/chart/loader/testdata/frobnitz-1.2.3.tgz differ
diff --git a/pkg/chart/loader/testdata/frobnitz/requirements.lock b/pkg/chart/loader/testdata/frobnitz/Chart.lock
similarity index 100%
rename from pkg/chart/loader/testdata/frobnitz/requirements.lock
rename to pkg/chart/loader/testdata/frobnitz/Chart.lock
diff --git a/pkg/chart/loader/testdata/frobnitz/charts/mariner-4.3.2.tgz b/pkg/chart/loader/testdata/frobnitz/charts/mariner-4.3.2.tgz
index ac499ec9fe2422d6eeaca7455279c7409ce4c21d..88c24d822573423dccc1f07e60dd13eb6782eb13 100644
Binary files a/pkg/chart/loader/testdata/frobnitz/charts/mariner-4.3.2.tgz and b/pkg/chart/loader/testdata/frobnitz/charts/mariner-4.3.2.tgz differ
diff --git a/pkg/chart/loader/testdata/frobnitz_backslash-1.2.3.tgz b/pkg/chart/loader/testdata/frobnitz_backslash-1.2.3.tgz
index bc6be27aa6d1afe8959df123f150919b74e514e8..513bfca1a413a8a2f87747beb25180247ae66423 100644
Binary files a/pkg/chart/loader/testdata/frobnitz_backslash-1.2.3.tgz and b/pkg/chart/loader/testdata/frobnitz_backslash-1.2.3.tgz differ
diff --git a/pkg/chart/loader/testdata/frobnitz_backslash/requirements.lock b/pkg/chart/loader/testdata/frobnitz_backslash/Chart.lock
similarity index 100%
rename from pkg/chart/loader/testdata/frobnitz_backslash/requirements.lock
rename to pkg/chart/loader/testdata/frobnitz_backslash/Chart.lock
diff --git a/pkg/chart/loader/testdata/mariner/charts/albatross-0.1.0.tgz b/pkg/chart/loader/testdata/mariner/charts/albatross-0.1.0.tgz
index f34758e120e49702c5029755b49eaa181d593574..fa8ef5acabc88a4af21f37f638398f409bcefe64 100644
Binary files a/pkg/chart/loader/testdata/mariner/charts/albatross-0.1.0.tgz and b/pkg/chart/loader/testdata/mariner/charts/albatross-0.1.0.tgz differ
diff --git a/pkg/chart/requirements.go b/pkg/chart/requirements.go
index bb2d1d11c8b13b181f7662791c32364e506bb7e6..2c17a97c6b30a9978b1cbc10fc3544ce59e017ea 100644
--- a/pkg/chart/requirements.go
+++ b/pkg/chart/requirements.go
@@ -49,10 +49,10 @@ type Dependency struct {
 	Alias string `json:"alias,omitempty"`
 }
 
-// RequirementsLock is a lock file for requirements.
+// Lock is a lock file for requirements.
 //
 // It represents the state that the dependencies should be in.
-type RequirementsLock struct {
+type Lock struct {
 	// Genderated is the date the lock file was last generated.
 	Generated time.Time `json:"generated"`
 	// Digest is a hash of the requirements file used to generate it.
diff --git a/pkg/chartutil/requirements_test.go b/pkg/chartutil/requirements_test.go
index 4d35c07cfcbb92c7a3dcb5e1683a35c15db122ee..1683c01e2093c9870a52959a07c170cc661cae3e 100644
--- a/pkg/chartutil/requirements_test.go
+++ b/pkg/chartutil/requirements_test.go
@@ -35,12 +35,12 @@ func TestLoadRequirements(t *testing.T) {
 	verifyRequirements(t, c)
 }
 
-func TestLoadRequirementsLock(t *testing.T) {
+func TestLoadChartLock(t *testing.T) {
 	c, err := loader.Load("testdata/frobnitz")
 	if err != nil {
 		t.Fatalf("Failed to load testdata: %s", err)
 	}
-	verifyRequirementsLock(t, c)
+	verifyChartLock(t, c)
 }
 
 func TestRequirementsEnabled(t *testing.T) {
@@ -426,7 +426,7 @@ func verifyRequirements(t *testing.T, c *chart.Chart) {
 	}
 }
 
-func verifyRequirementsLock(t *testing.T, c *chart.Chart) {
+func verifyChartLock(t *testing.T, c *chart.Chart) {
 	if len(c.Metadata.Requirements) != 2 {
 		t.Errorf("Expected 2 requirements, got %d", len(c.Metadata.Requirements))
 	}
diff --git a/pkg/chartutil/testdata/dependent-chart-alias/requirements.lock b/pkg/chartutil/testdata/dependent-chart-alias/Chart.lock
similarity index 100%
rename from pkg/chartutil/testdata/dependent-chart-alias/requirements.lock
rename to pkg/chartutil/testdata/dependent-chart-alias/Chart.lock
diff --git a/pkg/chartutil/testdata/frobnitz/requirements.lock b/pkg/chartutil/testdata/frobnitz/Chart.lock
similarity index 100%
rename from pkg/chartutil/testdata/frobnitz/requirements.lock
rename to pkg/chartutil/testdata/frobnitz/Chart.lock
diff --git a/pkg/chartutil/testdata/frobnitz_backslash/requirements.lock b/pkg/chartutil/testdata/frobnitz_backslash/Chart.lock
similarity index 100%
rename from pkg/chartutil/testdata/frobnitz_backslash/requirements.lock
rename to pkg/chartutil/testdata/frobnitz_backslash/Chart.lock
diff --git a/pkg/downloader/manager.go b/pkg/downloader/manager.go
index d4461d4bfa2a60fb1e64d226937bce4235410917..b80fd8d5cc31775d1e4dc5dd8312107f7371e911 100644
--- a/pkg/downloader/manager.go
+++ b/pkg/downloader/manager.go
@@ -73,14 +73,14 @@ func (m *Manager) Build() error {
 
 	// If a lock file is found, run a build from that. Otherwise, just do
 	// an update.
-	lock := c.RequirementsLock
+	lock := c.Lock
 	if lock == nil {
 		return m.Update()
 	}
 
 	req := c.Metadata.Requirements
 	if sum, err := resolver.HashReq(req); err != nil || sum != lock.Digest {
-		return errors.New("requirements.lock is out of sync with Chart.yaml")
+		return errors.New("Chart.lock is out of sync with Chart.yaml")
 	}
 
 	// Check that all of the repos we're dependent on actually exist.
@@ -155,7 +155,7 @@ func (m *Manager) Update() error {
 	}
 
 	// If the lock file hasn't changed, don't write a new one.
-	oldLock := c.RequirementsLock
+	oldLock := c.Lock
 	if oldLock != nil && oldLock.Digest == lock.Digest {
 		return nil
 	}
@@ -176,7 +176,7 @@ func (m *Manager) loadChartDir() (*chart.Chart, error) {
 // resolve takes a list of requirements and translates them into an exact version to download.
 //
 // This returns a lock file, which has all of the requirements normalized to a specific version.
-func (m *Manager) resolve(req []*chart.Dependency, repoNames map[string]string, hash string) (*chart.RequirementsLock, error) {
+func (m *Manager) resolve(req []*chart.Dependency, repoNames map[string]string, hash string) (*chart.Lock, error) {
 	res := resolver.New(m.ChartPath, m.HelmHome)
 	return res.Resolve(req, repoNames, hash)
 }
@@ -585,12 +585,12 @@ func (m *Manager) loadChartRepositories() (map[string]*repo.ChartRepository, err
 }
 
 // writeLock writes a lockfile to disk
-func writeLock(chartpath string, lock *chart.RequirementsLock) error {
+func writeLock(chartpath string, lock *chart.Lock) error {
 	data, err := yaml.Marshal(lock)
 	if err != nil {
 		return err
 	}
-	dest := filepath.Join(chartpath, "requirements.lock")
+	dest := filepath.Join(chartpath, "Chart.lock")
 	return ioutil.WriteFile(dest, data, 0644)
 }
 
diff --git a/pkg/resolver/resolver.go b/pkg/resolver/resolver.go
index 7072547f1f63f23ddea1150e60b2185d6e1b8c1e..367529f0c3c3fb1647bdb746d75791295085bc47 100644
--- a/pkg/resolver/resolver.go
+++ b/pkg/resolver/resolver.go
@@ -47,7 +47,7 @@ func New(chartpath string, helmhome helmpath.Home) *Resolver {
 }
 
 // Resolve resolves dependencies and returns a lock file with the resolution.
-func (r *Resolver) Resolve(reqs []*chart.Dependency, repoNames map[string]string, d string) (*chart.RequirementsLock, error) {
+func (r *Resolver) Resolve(reqs []*chart.Dependency, repoNames map[string]string, d string) (*chart.Lock, error) {
 
 	// Now we clone the dependencies, locking as we go.
 	locked := make([]*chart.Dependency, len(reqs))
@@ -107,7 +107,7 @@ func (r *Resolver) Resolve(reqs []*chart.Dependency, repoNames map[string]string
 	if len(missing) > 0 {
 		return nil, errors.Errorf("can't get a valid version for repositories %s. Try changing the version constraint in Chart.yaml", strings.Join(missing, ", "))
 	}
-	return &chart.RequirementsLock{
+	return &chart.Lock{
 		Generated:    time.Now(),
 		Digest:       d,
 		Dependencies: locked,
diff --git a/pkg/resolver/resolver_test.go b/pkg/resolver/resolver_test.go
index 84cf54ccf3665f7080eae82afabd69c8a90bba4c..7ec0cd387cbfcaaf74a4151968193f2ebe6a0364 100644
--- a/pkg/resolver/resolver_test.go
+++ b/pkg/resolver/resolver_test.go
@@ -25,7 +25,7 @@ func TestResolve(t *testing.T) {
 	tests := []struct {
 		name   string
 		req    []*chart.Dependency
-		expect *chart.RequirementsLock
+		expect *chart.Lock
 		err    bool
 	}{
 		{
@@ -61,7 +61,7 @@ func TestResolve(t *testing.T) {
 			req: []*chart.Dependency{
 				{Name: "alpine", Repository: "http://example.com", Version: ">=0.1.0"},
 			},
-			expect: &chart.RequirementsLock{
+			expect: &chart.Lock{
 				Dependencies: []*chart.Dependency{
 					{Name: "alpine", Repository: "http://example.com", Version: "0.2.0"},
 				},
@@ -72,7 +72,7 @@ func TestResolve(t *testing.T) {
 			req: []*chart.Dependency{
 				{Name: "signtest", Repository: "file://../../../../cmd/helm/testdata/testcharts/signtest", Version: "0.1.0"},
 			},
-			expect: &chart.RequirementsLock{
+			expect: &chart.Lock{
 				Dependencies: []*chart.Dependency{
 					{Name: "signtest", Repository: "file://../../../../cmd/helm/testdata/testcharts/signtest", Version: "0.1.0"},
 				},